我对python包装有一个令人困惑的问题
我有一个看起来像这样的setup.py:
import os
try:
from setuptools import setup
except ImportError:
from ez_setup import use_setuptools
use_setuptools()
from setuptools import setup
config = {
"name": "mypackage",
"version": "3.0.15",
"include_package_data": True,
"scripts": ["something.py"],
"entry_points": {},
"zip_safe": False,
}
setup(**config)
和MANIFEST.in
看起来像:
recursive-include mypackage *.*
recursive-exclude mypackage *.pyc .DS_Store
如果我python setup.py sdist
写了一个包含所有正确文件的tar.gz文件
如果我python setup.py bdist_egg
然后使用Stuffit Expander提取鸡蛋的内容...我看到scripts/something.py
文件,但没有mypackage
源文件。
然而,在提取的鸡蛋SOURCES.txt
中列出了mypackage
个文件,所以看起来像minifest已被解析,它只是没有将它们放入鸡蛋中。
我误解/做错了什么?
答案 0 :(得分:2)
您需要在package_data
entry至setuptools.setup()
中列出要包含在二进制文件中的文件:
config = {
"name": "mypackage",
"version": "3.0.15",
"include_package_data": True,
"scripts": ["something.py"],
"entry_points": {},
"package_data": {'': ['*.ext1', '*.ext2']},
"zip_safe": False,
}