簡體   English   中英

“ pip install”兩個具有相同名稱空間包的模塊

[英]'pip install' two modules with the same namespace package

我創建了兩個輪子,分別包含foo / comp1.py和foo / comp2.py。 'foo'是名稱空間包( PEP420 )。 當在同一個文件夾中安裝這兩個軟件包時,我希望pip將它們合並。 但是失敗了。 是預期的嗎? 為什么?

例:

pip_namespace>unzip -l comp1/dist/foo.comp1-1.0.0-py3-none-any.whl
Archive:  comp1/dist/foo.comp1-1.0.0-py3-none-any.whl
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2016-01-27 14:45   foo/comp1.py
       31  2016-01-27 14:55   foo.comp1-1.0.0.dist-info/DESCRIPTION.rst
      377  2016-01-27 14:55   foo.comp1-1.0.0.dist-info/metadata.json
        4  2016-01-27 14:55   foo.comp1-1.0.0.dist-info/top_level.txt
       92  2016-01-27 14:55   foo.comp1-1.0.0.dist-info/WHEEL
      244  2016-01-27 14:55   foo.comp1-1.0.0.dist-info/METADATA
      568  2016-01-27 14:55   foo.comp1-1.0.0.dist-info/RECORD
---------                     -------
     1316                     7 files

pip_namespace>unzip -l comp2/dist/foo.comp2-1.0.0-py3-none-any.whl
Archive:  comp2/dist/foo.comp2-1.0.0-py3-none-any.whl
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2016-01-27 14:56   foo/comp2.py
       31  2016-01-27 14:57   foo.comp2-1.0.0.dist-info/DESCRIPTION.rst
      377  2016-01-27 14:57   foo.comp2-1.0.0.dist-info/metadata.json
        4  2016-01-27 14:57   foo.comp2-1.0.0.dist-info/top_level.txt
       92  2016-01-27 14:57   foo.comp2-1.0.0.dist-info/WHEEL
      244  2016-01-27 14:57   foo.comp2-1.0.0.dist-info/METADATA
      568  2016-01-27 14:57   foo.comp2-1.0.0.dist-info/RECORD
---------                     -------
     1316                     7 files

pip_namespace>pip install -t test_pip comp1/dist/foo.comp1-1.0.0-py3-none-any.whl
Processing ./comp1/dist/foo.comp1-1.0.0-py3-none-any.whl
Installing collected packages: foo.comp1
Successfully installed foo.comp1
You are using pip version 7.1.2, however version 8.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

pip_namespace>pip install -t test_pip comp2/dist/foo.comp2-1.0.0-py3-none-any.whl
Processing ./comp2/dist/foo.comp2-1.0.0-py3-none-any.whl
Installing collected packages: foo.comp2
Successfully installed foo.comp2
Target directory /remote/devsup/users/flemaitre/tmp/pip_namespace/test_pip/foo already exists. Specify --upgrade to force replacement.
You are using pip version 7.1.2, however version 8.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

結果缺少comp2:

pip_namespace>find test_pip/foo
test_pip/foo
test_pip/foo/__pycache__
test_pip/foo/__pycache__/comp1.cpython-35.pyc
test_pip/foo/comp1.py

我認為您可以在這里找到答案: https : //stackoverflow.com/a/38919020/4802862

使用此答案,我能夠在同一頂級名稱空間中部署兩個輪子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM