繁体   English   中英

安装结果只有一个 .dist-info 文件夹(Pypi Packaging)

[英]Installation results in only a .dist-info folder (Pypi Packaging)

我按照https://packaging.python.org/tutorials/packaging-projects/上的说明创建了一个示例包。

但是,在安装时,它只会在 Python 的 site_packages 文件夹中创建一个 testvansjoerd-0.0.2.dist-info 文件夹。 因此在执行import testvansjoerd时给我一个错误

示例包: https : //test.pypi.org/project/testvansjoerd/

我使用python -m pip -v install --index-url https://test.pypi.org/simple/ testvansjoerd==0.0.2

日志输出:

Config variable 'Py_DEBUG' is unset, Python ABI tag may be incorrect
Config variable 'WITH_PYMALLOC' is unset, Python ABI tag may be incorrect
Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-ephem-wheel-cache-ey0faien
Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-req-tracker-ljdapjrw
Created requirements tracker 'C:\\Users\\Sjoerd\\AppData\\Local\\Temp\\pip-req-tracker-ljdapjrw'
Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-install-qi420ita
Looking in indexes: https://test.pypi.org/simple/
Collecting testvansjoerd==0.0.2
  1 location(s) to search for versions of testvansjoerd:
  * https://test.pypi.org/simple/testvansjoerd/
  Getting page https://test.pypi.org/simple/testvansjoerd/
  Looking up "https://test.pypi.org/simple/testvansjoerd/" in the cache
  Request header has "max_age" as 0, cache bypassed
  Starting new HTTPS connection (1): test.pypi.org:443
  https://test.pypi.org:443 "GET /simple/testvansjoerd/ HTTP/1.1" 304 0
  Analyzing links from page https://test.pypi.org/simple/testvansjoerd/
    Found link https://test-files.pythonhosted.org/packages/72/fd/ce57f8733d33ba55c3e636c43a8ff2c4b937bdd889bc55114a54ed5f5ecc/testvansjoerd-0.0.1-py3-none-any.whl#sha256=b38a90ad54a5207a8eea41f1c33fcc0543d7bf02ffbf7093fe51f128f4666b0c (from https://test.pypi.org/simple/testvansjoerd/), version: 0.0.1
    Found link https://test-files.pythonhosted.org/packages/31/83/7bd547b99d822f90cc4217206e83498e9fb065e50b3329fb6983fbcfa94f/testvansjoerd-0.0.1.tar.gz#sha256=158b30c1bcae241176a28b0811cef3eb1a182636350e5b3d16796d9da664598b (from https://test.pypi.org/simple/testvansjoerd/), version: 0.0.1
    Found link https://test-files.pythonhosted.org/packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl#sha256=67edf813ff53de27d34e5f37dcb0b725a8575a0c6b123ea218e9692f30b818a3 (from https://test.pypi.org/simple/testvansjoerd/), version: 0.0.2
    Found link https://test-files.pythonhosted.org/packages/00/3a/c2c8548319995b1b8b65d9d9d8cef6beefaeb4d8c06ce30f1f61e7b12a68/testvansjoerd-0.0.2.tar.gz#sha256=bdaf1e8352bc983c42fc45372c2c842f0a9a4b9222d1e11917cef15bc6abda6c (from https://test.pypi.org/simple/testvansjoerd/), version: 0.0.2
  Using version 0.0.2 (newest of versions: 0.0.2)
  Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-unpack-yo5gc9ek
  Looking up "https://test-files.pythonhosted.org/packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl" in the cache
  Current age based on date: 25
  Starting new HTTPS connection (1): test-files.pythonhosted.org:443
  https://test-files.pythonhosted.org:443 "GET /packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl HTTP/1.1" 304 0
  Using cached https://test-files.pythonhosted.org/packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl
  Downloading from URL https://test-files.pythonhosted.org/packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl#sha256=67edf813ff53de27d34e5f37dcb0b725a8575a0c6b123ea218e9692f30b818a3 (from https://test.pypi.org/simple/testvansjoerd/)
  Added testvansjoerd==0.0.2 from https://test-files.pythonhosted.org/packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl#sha256=67edf813ff53de27d34e5f37dcb0b725a8575a0c6b123ea218e9692f30b818a3 to build tracker 'C:\\Users\\Sjoerd\\AppData\\Local\\Temp\\pip-req-tracker-ljdapjrw'
  Removed testvansjoerd==0.0.2 from https://test-files.pythonhosted.org/packages/8f/d2/0165a096797eaa16aec2fce05e0ad4c511a6518c995fb0778099b335a24a/testvansjoerd-0.0.2-py3-none-any.whl#sha256=67edf813ff53de27d34e5f37dcb0b725a8575a0c6b123ea218e9692f30b818a3 from build tracker 'C:\\Users\\Sjoerd\\AppData\\Local\\Temp\\pip-req-tracker-ljdapjrw'
Installing collected packages: testvansjoerd

Successfully installed testvansjoerd-0.0.2
Cleaning up...
Removed build tracker 'C:\\Users\\Sjoerd\\AppData\\Local\\Temp\\pip-req-tracker-ljdapjrw'

对不起,这个愚蠢的包名称,最初我创建了一个带有连字符的包,并认为这是根本原因。

在这一点上,我什至不确定这是环境问题还是包的问题。

Windows 10,Python 3.7

当前,您的项目结构如下:

/testvansjoerd
  setup.py
  setup.cfg
  README.md

但是,为了拥有可以导入的最小软件包,您必须创建一个(带有空__init__.py的文件夹)。 项目结构将如下所示:

/testvansjoerd
  /testvansjoerd
    __init__.py
  setup.py
  setup.cfg
  README.md

包装文件中也提到了上述文件结构。

如果有人仍然遇到这个问题。

如果你有这样的项目结构:

/project
   /src
      /package_name
         __init__.py
         main.py
         ...
   setup.py
   README.md
   ...

只需尝试在您的安装脚本中更改packages=

packages=setuptools.find_packages('src/')

所以它将在src搜索包

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM