使用setup.py进行安装时,不会复制__init__模块

时间:2015-09-13 14:04:18

标签: python installation setuptools distutils setup.py

我为项目

设置了以下结构
/docs
    releaseNotes.rst
MANIFEST.in
/pySan
    __init__.py
    __init__.pyc
    /torrent
        __init__.py 
        components.py
    utils.py
    utils.pyc
setup.py
VERSION

但是当我在__init__.py文件夹中安装torrent时,不会复制。

它安装在/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pySan中,setup.py是:

from distutils.core import setup
from os import path

v = open(path.join(path.dirname(__file__), 'VERSION'))
VERSION = v.readline().strip()
v.close()

setup(
    name='pySan',
    version=VERSION,
    author='Ciasto Piekarz',
    author_email='Ciasto_piekarz@gmail.com',
    packages=['pySan', 'pySan/torrent'],
    data_files = ['VERSION'],
    license='LICENSE',
    description='Package is a collection of commonly used code for all my tools',
)

2 个答案:

答案 0 :(得分:2)

问题在于这一行:

packages=['pySan', 'pySan/torrent'],

您需要使用包语法:

packages=['pySan', 'pySan.torrent'],

答案 1 :(得分:0)

在以正确的格式提供软件包值时,请确保您还在运行“ setup.py build”而不是“ setup.py build_ext”,这只会生成扩展名,而不会覆盖任何.py文件。