如何解决使用setuptools和pip将根级数据文件安装到Python包中
我的消息来源组织如下:
.
├── testpackage/
│ ├── __init__.py
│ └── foo.py
├── .env
├── MANIFEST.in
└── setup.py
我正在尝试将.env
(文本文件)放入安装的软件包中,即site-packages/testpackage/.env
和pip install .
尝试的解决方法
# setup.py
from setuptools import setup,find_packages
setup(
name='testpackage',version='1.0.0',description='Install root level text file',packages=find_packages(),# Doesn't work obvIoUsly,since .env is a level above testpackage/__init__.py
# package_data={'': ['.env']},#
# Installs to /usr/local/.env instead
# data_files=[('',['.env'])],#
# Installs to site-packages/.env instead
# package_data={'': ['../.env']},#
include_package_data=True,)
我也有MANIFEST.in
:
# MANIFEST.in
include .env
我尝试复制this answer,但似乎不同之处在于pip不会拾取MANIFEST.in
,而会忽略testpackage
以外的所有内容。
也许有某种方法可以强迫data_files
而不是/usr/local/
安装到软件包目录中?
作为最后的选择,我可以在.env
运行时手动将testpackage
符号链接到setup.py
中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。