在 Ubuntu 16.04 和 Windows 7 (pip 18.1, python 2.7.15) 上,我遇到了一个问题,package data
它进入了 tar.gz 文件,但是当我安装时它们没有安装到我的脚本目录中点。我在 Windows 上的脚本目录是\Python27\Scripts
. 我也签入了site-packages
,但文件没有显示在那里。当通过 pip 安装时,我希望在 python 脚本旁边显示一个文本文件,我认为使用data_files
并不能实现这一点(根据 setup.py 没有安装数据文件?
我的包结构将所有文件 ( hello.py, MANIFEST.IN, setup.py
) 放在一个名为fakeapp
. 我想保留这种结构,因为我实际尝试修复的项目具有这种结构。
我查了很多答案并尝试过:
向__init__.py
repo 的根添加一个空的,这并没有解决它。
我试过添加和删除include_package_files=True
无济于事
我已经试过指定package_data={'':['texto.txt']}
以及
添加include texto.txt
到MANIFEST.in
无济于事。
这个答案:建议使用 bdist,这也不起作用。
我确定这是一个重复的问题,但我无法找到任何解决方案。
所以这是我的测试用例:setup.py
from setuptools import setup
setup(
author='hi',
author_email='hi@hi.com',
description="test",
scripts=['hello.py',],
license='MIT',
name='hi',
version='v2018.12.02',
include_package_data=True
)
你好.py:
#!/usr/bin/env python
def main():
print('hello world!')
if __name__ == '__main__':
main()
清单.in:
include texto.txt
我在 dist/ 中创建了一个 tar.gz
python setup.py sdist
而我的 texto.txt 就在那个 tarball 中。
然后我安装了
pip install dist\hi-2018.12.2.tar.gz
并且只hello.py进入C:\Python2.7\Scripts
我究竟做错了什么?
目录树:
│ hello.py
│ MANIFEST.in
│ setup.py
│ texto.txt
│
├───dist
│ hi-2018.12.2.tar.gz
│
└───hi.egg-info
dependency_links.txt
PKG-INFO
SOURCES.txt
top_level.txt
相关分类