如何更改依赖路径并部署到与开发不同的目录结构?
我的源目录中有以下结构
\ABCE
\ABCE\lib
\ABCE\lib\modulA.py
\ABCE\lib\modulA.py
如果我现在打包python setup.py sdist
我需要调用模块:
import lib.moduleA
import lib.moduleB
我怎样才能避免lib。但维护我的目录结构?所以我进口
import moduleA
import moduleB
lib
在packages_dir
选项中列出:
package_dir = {'': 'lib'}
如果你使用不同的约定来布局你的源目录,那没问题:你只需要提供 package_dir 选项来告诉 Distutils 你的约定。例如,假设您将所有 Python 源代码保存在
lib
中,因此“根包”中的模块(即根本不在任何包中)位于 中,包中的lib
模块位于中,等等。然后你会放foo
lib/foo
package_dir = {'': 'lib'}
在您的安装脚本中。这个字典的键是包名,一个空的包名代表根包。这些值是相对于您的分发根目录的目录名称。在这种情况下,当您说 时
packages = ['foo']
,您承诺该文件lib/foo/__init__.py
存在。