【问题标题】:How do tell setuptools to get my package from src/mypackage如何告诉 setuptools 从 src/mypackage 获取我的包
【发布时间】:2018-11-24 13:25:37
【问题描述】:

我有一个这样的包目录设置

package_dir
|-src
| |-mypackage
|   |-__init__.py
|
|-setup.py

如何设置setup.py 以使我能够import mypackage

我试过了:我运行python setup.py bdist_wheel,其中setup.py 有选项...

packages=find_packages(include=["src"]),
package_dir={"": "src"},

当我运行 pip install path/to/mypackage.whl 时,它安装得很好 但是当我做python -c "import mypackage" 时,它会以ModuleNotFoundError 失败 而python -c "import src.mypackage" 很好

【问题讨论】:

    标签: python setuptools setup.py


    【解决方案1】:
    find_packages(where='src')
    

    使用where,而不是includeexclude/include 用于进一步过滤找到的包。见:

    $ python
    Python 2.7.13 (default, Nov 24 2017, 17:33:09) 
    [GCC 6.3.0 20170516] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from setuptools import find_packages
    >>> find_packages()
    []
    >>> find_packages(include=['src'])
    []
    >>> find_packages(where='src')
    ['mypackage']
    

    【讨论】:

    • 这解决了我的问题!在目前的包装状态下,这是有价值的信息。
    猜你喜欢
    • 2012-10-11
    • 2010-09-25
    • 2018-03-24
    • 2013-05-07
    • 2016-10-30
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 1970-01-01
    相关资源
    最近更新 更多