我正在创建一个 Django 包,其中包含一些我将在多个 Web 应用程序中使用的核心功能。
现在,这是我第一次创建 Django/Python 包。我已经阅读了现有的文档和教程。
我的问题是,每次我对包进行更改并重新创建包,并使用“python setup.py install”方法重新安装它时,实际上已经安装了新包,但之前的版本仍然存在。
因此,例如,现在我的机器上安装了最新的 3 个版本的软件包。
我该如何做到这一点,以便软件包的安装删除同一软件包的所有先前安装?
谢谢
我正在创建一个 Django 包,其中包含一些我将在多个 Web 应用程序中使用的核心功能。
现在,这是我第一次创建 Django/Python 包。我已经阅读了现有的文档和教程。
我的问题是,每次我对包进行更改并重新创建包,并使用“python setup.py install”方法重新安装它时,实际上已经安装了新包,但之前的版本仍然存在。
因此,例如,现在我的机器上安装了最新的 3 个版本的软件包。
我该如何做到这一点,以便软件包的安装删除同一软件包的所有先前安装?
谢谢
看来这是一个已知问题。
问题 5342的报告者对安装目录中保留的旧文件也有同样的问题。
根据Issue 4673,distutils2
现在有一个uninstall
命令可用于在安装时清理目录。也许您可以覆盖该install
命令,使其首先尝试卸载旧软件包?
否则,似乎解决方案是:
将一些旧文件检测破解到每个包中,或告诉用户“先删除旧安装”。两者都不是很好。