在Windows和Linux上分发项目的最佳方法是什么?

3

有一个jython项目需要一些依赖项,例如Jenkins、某种类型的subversion,并且需要在Windows上完成安装。

我是否可以考虑使用pip来帮助安装所有这些项,或者应该寻找其他工具,例如NSIS?

更新: 有一个自动化测试项目,它有以下依赖项:

  • Java JDK
  • Jython
  • Ant
  • Robot Framework
  • subversion
  • Jenkins

我个人更喜欢在Linux上运行,但通常使用此程序的人是Windows用户。我足够自信编写一个脚本在Linux上安装所有这些,但我想要的是一个脚本/安装程序来安装相关工具。

我更喜欢有一个单独的脚本来完成所有这些 - 在Ubuntu上很容易通过apt-get实现; 但在Windows上,这很快就变得非常复杂。

尝试做到这一点的最佳方法是什么?我应该为不同的操作系统创建单独的安装程序吗?


你能详细说明一下你打算如何做到这一点吗? - dusual
是的,您如何使用pip安装它们?我不认为有适用于它们的pip软件包。 - Jordan Dea-Mattson
1
pip 安装 Python 源代码包。Jenkins 是 Java。Subversion 是其他东西,但不是 Python。所以,不,不合理。 - hughdbrown
3个回答

2

pip 是“pip install packages, python packages”的缩写,它只能安装Python包。

据我所知,由于Jenkins和Subversion不是Python包,因此无法安装它们,这是不明智的。

遗憾的是,在每个平台上没有单一的已建立工具来安装所有东西。

使用pip 来安装所有Python包,并优先使用virtualenv 来创建隔离的Python环境以管理您的项目。


2

由于pip只安装Python包,而Jenkins不是Python包(它是用Java编写的),因此你不能使用它来安装那些包。

你应该完全看一下virtualenv,但如果你需要为你的项目在Windows上创建一个“双击”安装程序,我认为NSIS是一种可行的方式。


0

我成功地使用install4j为Windows、Linux和OSX创建可执行安装程序。该应用程序是Java应用程序,它捆绑了JRE。Install4j使用各自的JRE为每个指定平台创建安装程序。到目前为止,在Windows上运行得非常好,在Linux和OSX上也有一定的效果(例如,在新版本的install4j中,Java 1.8的JRE在linu上没有正确捆绑,因此JRE是预安装的,但可以自动化)。它还允许您运行非交互式安装程序。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接