安装时删除旧版本Python包

0 投票
1 回答
1775 浏览
提问于 2025-04-17 17:43

我正在创建一个Django包,这个包包含一些我会在多个网页应用中使用的核心功能。

这是我第一次创建Django/Python包。我已经阅读了一些现有的文档和教程。

我遇到的问题是,每次我对这个包进行修改,然后重新打包,再用“python setup.py install”这个方法安装时,新的包确实安装上了,但之前的版本仍然保留在我的机器上。

举个例子,现在我机器上安装了这个包的最新三个版本。

我该怎么做才能让安装这个包时,自动删除之前安装的所有同版本的包呢?

谢谢!

1 个回答

0

看起来这是一个大家都知道的问题。

问题5342中,报告这个问题的人也遇到了安装目录里有旧文件的问题。

根据问题4673,现在的distutils2有一个uninstall命令,你可以用它来清理安装目录。也许你可以先修改install命令,让它在安装新包之前先尝试卸载旧包?


否则,解决办法似乎是:

在每个包里加一些检测旧文件的代码,或者告诉用户“先删除旧的安装”。这两种方法都不是很好。

撰写回答