设置.py安装仅显示文件夹

2024-04-28 04:12:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用python为pypi创建一个库,所以我设置.py文件。 我在看过一些教程后上传了它,但是当我试图通过pip install pyravendb安装它时,我只得到一个空文件夹。你知道吗

试图直接从python setup.py install.安装它 再次只得到一个pyravendb空文件夹。你知道吗

我的设置.py文件

from distutils.core import setup

    setup(
        name='pyravendb',
        packages=['pyravendb'],
        version='1.0.1',
        description='This is the official python client for RavenDB document database',
        author='Idan Haim Shalom',
        author_email='my email',
        url='https://github.com/IdanHaim/RavenDB-Python-Client/',
        download_url='https://github.com/IdanHaim/RavenDB-Python-Client/tarball/1.0.1',
        keywords='ravendb pyravendb database',
        license='GNU',
        requires=
        [
            'pycrypto',
            'requests',
            'Inflector'
        ],
        zip_safe=False,
    )

Tags: install文件pyhttpsgithub文件夹comurl
2条回答

您的项目似乎具有以下结构:

pyravendb/
  connection/
  custom_exceptions/
  d_commands/
  data/
  hilo/
  store/
  tests/
  tools/

添加您的设置.py将文件保存到项目根文件夹,并更改packages以包含要包含在分发版中的每个模块/文件夹。您可以显式地声明要打包的所有模块,如下所示:

packages=[
        'pyravendb',
        'pyravendb.connection',
        'pyravendb.custom_exceptions',
        'pyravendb.d_commands',
        'pyravendb.data',
        'pyravendb.hilo',
        'pyravendb.store',
        # and so on....
],

或者,您可以使用setuptools并导入find_packages,然后使用packages=find_packages(),自动使用目录中的所有包。你知道吗

好的,我设法找到了正确的答案。就像PRNDL建议的那样,但工作量要少一点。你知道吗

from setuptools import setup, find_packages

并在packages add find \u packages()方法中查找我的所有包

setup(
    name='pyravendb',
    packages=find_packages(),

因为我的项目结构有多个子目录包,所以我必须将它们全部包含在我的设置.py所以我第一次尝试失败了。 这样做解决了我的问题没有写我所有的包名

相关问题 更多 >