2014-01-09 138 views
4

我有非常基本的Python安装脚本,只需调用distutils.core.setup()及相关参数。这些软件包仅供内部使用,所以目前我不需要太多。在Python包安装中删除旧的egg-info文件

让我感到困惑的是,当安装新版本的软件包时,旧的egg-info文件不会自动删除 - 尽管软件包目录被新版本覆盖。

(1)默认情况下没有删除旧文件的原因是什么?

(2)有没有推荐的方法来删除旧版本的egg-info文件,以便在安装过程变得更加复杂时以后不会让我感到悲伤?

预先感谢您。

+0

这在他们的版本号与安装混帐的修订包时,会导致问题对我来说。 pkg_resources.get_distribution(“包”)然后返回排序最高的版本,而不是最近的(因此是活动的)已安装的修订版 – NeilenMarais

回答

3

我也有使用distutils包的egg-info文件的问题。我认为目前推荐的套件是setuptools。我切换到setuptools修复了旧的egg-info文件带来的问题。所以我会建议使用setuptools.setup()而不是distutils.core.setup()。看到这个帖子的详细资料:

Differences between distribute, distutils, setuptools and distutils2?

+0

谢谢您的回答。由于我现在正在开发一个不同的项目,因此可能需要几周的时间才能完成。 –