Python 如何告诉distutils子目录中的包?
我有一个Python 如何告诉distutils子目录中的包?,python,github,distutils2,Python,Github,Distutils2,我有一个setup.py文件,用于我正在处理的一个项目,它需要引入几个第三方软件包,这些软件包(尚未)在cheese shop中发布。其中之一是来自此git存储库的“spine”和“pyguts”模块: 通常,我可以通过在setup.py文件中指定以下项目(为了清楚起见,省略了几行)从gitgub安装东西: 但是,这只起作用,因为它的setup.py文件位于存储库的根目录中 如果我尝试对spine和pyguts存储库执行类似操作,如下所示: #! /usr/bin/python # Encod
setup.py
文件,用于我正在处理的一个项目,它需要引入几个第三方软件包,这些软件包(尚未)在cheese shop中发布。其中之一是来自此git存储库的“spine”和“pyguts”模块:
通常,我可以通过在setup.py文件中指定以下项目(为了清楚起见,省略了几行)从gitgub安装东西:
但是,这只起作用,因为它的setup.py
文件位于存储库的根目录中
如果我尝试对spine
和pyguts
存储库执行类似操作,如下所示:
#! /usr/bin/python
# Encoding: UTF-8
from setuptools import setup, find_packages
__version__ = '0.0.1'
setup(
dependency_links=[
'https://github.com/bitcraft/PyTMX/archive/master.zip#egg=PyTMX',
'https://github.com/terrysimons/spine-python/archive/master.zip#egg=spine',
],
install_requires=[
'PyTMX',
'spine',
],
)
当我运行python setup.py install
时,distutils会抱怨:
Searching for spine
Best match: spine [unknown version]
Downloading https://github.com/terrysimons/spine-python/archive/master.zip#egg=spine
Processing master.zip
error: Couldn't find a setup script in /tmp/easy_install-OXsH6T/master.zip
当
setup.py
文件不在包存储库的根目录中时,如何让distutils安装包?据我所知,这方面的方法是将模块作为子目录包含在包中,而不是安装它们
显然,这意味着您将无法直接从模块外部访问它们。不过,您仍可以导入my_模块。my_子模块
当它们准备好与主模块分离时,只需为它们制作新的包
Searching for spine
Best match: spine [unknown version]
Downloading https://github.com/terrysimons/spine-python/archive/master.zip#egg=spine
Processing master.zip
error: Couldn't find a setup script in /tmp/easy_install-OXsH6T/master.zip