繁体   English   中英

pip 安装本地 package 用于兄弟文件夹中的测试

[英]pip installing local package for testing in sibling folder

我有源代码要在测试文件夹中测试,该文件夹是 src 代码文件夹的同级文件夹。 见下面的结构

├── src
│   ├── modules
│   │   ├── module1
│   │   │   ├── __init__.py
│   │   │   └── somecode.py
│   │   └── module2
│   └── setup.py
└── tests
    └── test1.py

我的 setup.py 文件看起来像这样

setuptools.setup(
    name="src_code",
    version=0.26,
    description="solves relative imports",
    author="yer boi",
    url="",
    package_data={"": ["LICENSE"]},
    package_dir={"": "modules"},
    packages=setuptools.find_packages(where="modules"),
    python_requires=">=3.8",
    py_modules=[
],
)

现在我有 a.venv 活动并且我正在运行pip install -e src从基本文件夹有一个本地可编辑的 package 我可以测试并导入到测试文件夹/文件中。 问题是当我 pip 冻结时,我在已安装的内容中收到一些奇怪的字符串,我无法导入任何本地构建的包。 pip freeze 如下所示

black==22.10.0
-e git+https://github.com/xxx/xxx.git@5da71eb9ecb1cb08c930edd1d052fa209375f38d#egg=src_code&subdirectory=lambdas

任何人都知道为什么我得到这个奇怪的 pip 冻结结果,以及如何解决这个问题以便我可以在本地构建和导入我的 src package?

我在 src_code.egg-info 中的 top_level.txt 文件看起来像这样

module1
module2

所以问题是我正在做pip install -e /path/to/package 由于某种原因,这在导入时造成了一些问题,egg-info 文件的链接似乎已关闭。 如果您想在兄弟文件夹中使用本地 package 来获取-e标志,只需执行pip install /path/to/package然后一切正常

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM