我使用pip安装项目依赖项。Pip将其所有依赖项安装到此位置:
位置:/home/tara/taraproject/myvenv/lib/python2.7/site-packages。
我的目标是将所有依赖项与项目一起放置,而不是让用户在操作期间设置它。只是试图减轻操作团队的安装负担。
我尝试在我的ProjectFolder中尝试这个,我的工作项目存在于其中:
/home/tara/taraprject/ProjectFolder。
我创建了一个名为dependencies的目录,并尝试添加其中的所有依赖模块。然后进行了导入。
我还通过添加init.py文件将目录转换为模块。
位置:/home/tara/taraproject/myvenv/lib/python2.7/site-packages。
我的目标是将所有依赖项与项目一起放置,而不是让用户在操作期间设置它。只是试图减轻操作团队的安装负担。
我尝试在我的ProjectFolder中尝试这个,我的工作项目存在于其中:
/home/tara/taraprject/ProjectFolder。
我创建了一个名为dependencies的目录,并尝试添加其中的所有依赖模块。然后进行了导入。
from dependencies.yapsy.PluginManager import PluginManager
我还通过添加init.py文件将目录转换为模块。
Traceback (most recent call last):
File "main.py", line 16, in <module>
from dependencies.yapsy.PluginManager import PluginManager
File "/home/tara/taraproject/myvenv/checkaccess/dependencies/yapsy/__init__.py", line 73, in <module>
from yapsy.compat import is_py2, str
ImportError: No module named yapsy.compat
看起来导入工作正常,但模块的内部代码出现了与此类导入有关的错误。
为什么要这样做?
如果我能这样做,操作团队就可以轻松地获取我的项目并运行它,而不需要下载依赖项和进行必要的设置。只想让操作部分更加简单。
如何解决这些问题或者说应该怎么做?
dependencies
放在dependencies
中,您正在更改模块的绝对导入路径,因此很容易破坏它们。最好不要将dependencies
作为Python包,而是在保持导入语句不变的情况下将其添加到PYTHONPATH
环境变量中。 - user2390182