我的项目具有如下文件结构:
MyParserPkg/
setup.py
requirements.txt
readme.txt
MANIFEST.in
doc/
logs/
ParserPKG/
// many python files here
parser.py
config.a.ini
config.b.ini
清单的内容是:
include README.txt requirements.txt
include ParserPkg/config.a.ini
include ParserPkg/config.b.ini
我的setup.py:
setup(name='ParserPkg',
version='0.1',
description='A parser for testing',
packages=['ParserPkg'],
zip_safe=False)
然后我这样做:
pip install -r requirements.txt
pip install -e .
安装后,然后检查安装项目的虚拟环境的站点软件包,发现其中仅包含一个文件:
my-envs/dialog-as-api/lib/python3.7/site-packages/ParserPkg.egg-link
以及此文件的内容,这是我的项目的路径:
/Users/lvisa/MyParserPkg
为什么只包含一个鸡蛋链接文件?
答案 0 :(得分:1)
pip install -e .
以“可编辑”模式安装软件包。它会创建链接,并允许您编辑源代码,而无需不断重新安装。
因此,您的软件包已正确安装。这就是“可编辑”模式的工作方式。
尝试python -c 'import MyParserPkg'
答案 1 :(得分:1)
您正在使用-e
标志,这使程序包可编辑。根据{{3}},
“可编辑”安装基本上是the documentation安装。
下面的链接提供:
为此,请使用setup.py开发命令。它实际上没有安装任何东西,但其功能与setup.py install或EasyInstall工具非常相似。而是在部署目录中创建一个特殊的.egg-link文件,该文件链接到项目的源代码。而且,如果您的部署目录是Python的site-packages目录,它还将更新easy-install.pth文件以包含您项目的源代码,从而使sys.path中的该文件可用于使用该Python安装的所有程序。
因此,它在某种意义上可以“安装”其他任何模块都可以使用,但实际上并没有覆盖文件,因此您可以编辑代码并立即对其进行测试。