setuptools查看我的包中的一个子目录

时间:2016-03-08 15:39:33

标签: python package packages setuptools

我已根据setup.py为我的包创建了setuptools。它工作得非常好,直到我添加了一个子模块,该子模块实际上是一个内部带有__init__.py的子目录。现在安装正常完成,但是当我尝试导入包时,我得到了

ImportError: No module named genalgs

我的包的结构如下:

topdir/
-> setup.py
-> packg/
---> __init__.py
---> submodule.py (which imports genalgs)
---> opthermod.py
---> genalgs/
-----> __init__.py
-----> subsubmod.py
-----> othersub.py

我检查了目录build/lib.linux-x86_64-2.7/packg/,除genalgs/目录外,其他所有内容都在那里,所以我猜这是错误。

我使用的setup电话是

setup(name='pckg',
      version='0.1.0',
      description='something',
      long_description=open('README.md').read(),
      url='https://github.com/som/som.git',
      author='My name',
      author_email='mymail@mail.com',
      license='GNU GPL V3.0',
      packages=['pckg'],
      install_requires=depencies)

1 个答案:

答案 0 :(得分:0)

您需要让packages调用setup()参数更加聪明,告诉您所有要包含的软件包:

from setuptools import setup, find_packages

setup(...
     packages=find_packages(),
...)