簡體   English   中英

無法通過 setup.py 正確安裝我的腳本

[英]Can't install my script properly via setup.py

我想讓我的腳本可以通過 pip 安裝,我寫了一個 setup.py 文件,但安裝工作不正常。

讓我們假設以下場景。 我有一個名為 hello_world_project 的項目。 項目內部有兩個文件夾。 第一個文件夾名為 hello_world_project,第二個文件夾是帶有 unittests 的 test 文件夾。

hello_world_project 文件夾內是子目錄。 結構如下所示:

  • hello_world_project/folder_1
  • hello_world_project/folder_2
  • hello_world_project/images

folder_1 和 folder_2 都包含一個 __init__.py 文件,images 文件夾包含簡單的 png。

我的 setup.py 看起來像這樣:

from setuptools import setup, find_packages

setup(
    (...)
    packages=find_packages("hello_world_project"),
    package_dir={"": "hello_world_project"},
    entry_points={
        'console_scripts': [
            'hello_world = hello_world_project.main:main'
        ]
    },
    (...)
)

當我通過pip install安裝軟件包時 包裹在我的 venv 中分開。 我的 venv 的 lib 文件夾沒有 hello_world_project 文件夾。 相反,我的 venv lib 文件夾中有一個 folder_1、folder_2 和 images 文件夾。

我嘗試了不同的方法,但是當我將 setup.py 更改為 ie 時:

    from setuptools import setup, find_packages

    setup(
        (...)
        packages=find_packages("hello_world_project"),
        package_dir={"hello_world_project": "hello_world_project"},
        entry_points={
            'console_scripts': [
                'hello_world = hello_world_project.main:main'
            ]
        },
        (...)
    )

我收到以下錯誤消息:錯誤:包目錄“folder_1”不存在

我找到了解決方案。 我更改了設置 py 並包含顯式文件夾。

from setuptools import setup, find_packages

setup(
    (...)
    packages=["hello_world_project", "hello_world_project.folder_1", "hello_world_project.folder_2"],
    entry_points={
        'console_scripts': [
            'hello_world = hello_world_project.main:main'
        ]
    },
    (...)
)

暫無
暫無

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

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