WEB开发网
开发学院软件开发Python 使用 setuptools 孵化 Python egg 阅读

使用 setuptools 孵化 Python egg

 2007-03-29 12:24:42 来源:WEB开发网   
核心提示: 当然,这一次只能使一个版本是活动的,使用 setuptools 孵化 Python egg(6),不过通过在各个脚本上面放上这样两行类似内容,就可以让脚本选择自己希望使用的版本:清单 8. 在脚本中使用某个版本的包from pkg_resources import requirerequi

当然,这一次只能使一个版本是活动的。不过通过在各个脚本上面放上这样两行类似内容,就可以让脚本选择自己希望使用的版本:

清单 8. 在脚本中使用某个版本的包

from pkg_resources import require
require("Gnosis_Utils==1.2.0")

通过使用上述要求,setuptools 就可以在运行 import 语句时添加一个特定的版本(如果指定了大于比较,就是最新的可用版本)。

让包可以识别 setuptools

我会更希望让用户不需要知道 Gnosis Utilities 的下载目录就可以安装它。这 通常都可以 工作,因为 Gnosis Utilities 在 Python Cheeseshop 上有一个信息清单。不幸的是,因为没有考虑 setuptools ,所以我在 python.org 上为我的 Gnosis Utilities 建立了一个 “不匹配” 的入口 http://www.python.org/pypi/Gnosis%20Utilities/1.2.1。具体地说,这个归档文件是根据类似于 Gnosis_Utils-N.N.N.tar.gz 的模式进行命名的(这些工具也打包成了 .zip 和 .tar.bz2 文件,最新的几个版本还打包成了 win32.exe 的安装程序,所有这些文件 setuptools 都可以很好地处理)。不过 Cheeseshop 上的项目名的拼写与 “Gnosis Utilities” 稍微有点不同。实际上,在 Cheeseshop 的一个很小的管理版本的更改就会将 http://www.python.org/pypi/Gnosis_Utils/1.2.1-a 创建为一个发布后版本。发行版归档文件本身并没有什么变化,不过是在 Cheeseshop 里增加了一点元数据。只需要少量努力,就可以使用更加简单的安装程序(注意,出于测试目的,我运行了一个 easy_install -m 来删除所安装的包)。

清单 9. 简单增加对 setuptools 的识别

% easy_install Gnosis_Utils
Searching for Gnosis-Utils
Reading http://www.python.org/pypi/Gnosis_Utils/
Reading http://www.gnosis.cx/download/Gnosis_Utils.ANNOUNCE
Reading http://gnosis.cx/download/Gnosis_Utils.More/
Best match: Gnosis-Utils 1.2.1
Downloading [...]

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:使用 setuptools 孵化

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接