我发送给 pip 的 Python 包中的
setup.py
文件:
#!/usr/bin/env python
from distutils.core import setup
setup(
#......
long_description=open('README.md').read(),
#....
)
文件
README.md
存在。当在setup.py
中放置断点并在本地执行时,它可以很好地读取文件。但是,当我从 pip (pip install my_lib
) 安装它时,它在安装过程中抛出异常,提示未找到它:
File "/private/var/folders/ty/0nvksfhn29z_cjb6md2t3x8c0000gn/T/pip_build_alex/my_app123/setup.py", line 14, in <module>
long_description=open('README.md').read(),
IOError: [Errno 2] No such file or directory: 'README.md'
Complete output from command python setup.py egg_info:
更新:
我刚刚从 pip 下载了我的库,解压后发现文件 README、LICENCE、MANIFEST 不在其中。它们在 gitignore 中要么是因为它们存在于 github 中。
我需要创建包含以下内容的
MANIFEST.in
:
include README.md
include LICENSE.txt
您需要有一个
manifest.in
,如上面答案中所述,并且您还需要通过添加以下参数将其添加到您的 setup.py
:
include_package_data=True
所以它看起来像:
setup(
....
packages=find_packages(),
include_package_data=True,
...
)