我是一名 java 开发人员/python 初学者,我缺少我的 maven 功能,尤其是依赖管理和构建自动化(我的意思是你不构建,但是如何创建一个用于部署的包?)
是否有等效于实现这些功能的python?
注意:我使用 python 2.x
谢谢。
我是一名 java 开发人员/python 初学者,我缺少我的 maven 功能,尤其是依赖管理和构建自动化(我的意思是你不构建,但是如何创建一个用于部署的包?)
是否有等效于实现这些功能的python?
注意:我使用 python 2.x
谢谢。
Python 使用 distutils 和 setuptools 进行依赖和打包。
这是一个解释基础知识的教程:http: //docs.activestate.com/activepython/3.2/diveintopython3/html/packaging.html
简而言之,您将拥有 setup.py 文件,其中包含依赖项和脚本编译/安装信息,您可以使用它构建鸡蛋、dist tarball、二进制 tarball 等。
没有直接匹配。但是,您可以获得最接近的:
其他产品是 Maven/zc.buildout 的子集:
您可能知道 Ant 和 shell 脚本,因此您还可以查看以下 Python 工具:
我想指出PyBuilder,它深受 maven 的启发,但使用 python 而不是 XML 进行配置,所以它实际上是可读的,恕我直言。
有一个用于依赖管理的插件(在底层使用 pip 并区分构建和运行时依赖),并且与 maven 不同,您可以使用单个命令运行完整的构建生命周期。
对于部署,除了 distutils/setuptoos 之外,还可以看看pip 包(使用下面的 setuptools)。它可以回滚失败的安装,也可以卸载(easy_install/setuptools 中缺少的东西)。此外,您可以通过需求文本文件指定依赖关系。
使用 virtualenv 创建独立的项目环境并使用 pip/easy_install 管理依赖关系很好。