Подтвердить что ты не робот

Смутно о параметрах package_dir и пакетах в файле setup.py

Вот моя структура каталога проекта, в которую входит папка проекта, плюс папка "framework", содержащая пакеты и модули, совместно используемые несколькими проектами который находится на том же уровне в иерархии, что и папки проекта:

--------------------------------------------------------------
Framework/
    package1/
        __init__.py
        mod1.py
        mod2.py
    package2/
        __init__.py
        moda.py
        modb.py

My_Project/
    src/
        main_package/
             __init__.py
             main_module.py
    setup.py
    README.txt
--------------------------------------------------------------

Ниже представлен неполный список содержимого моего файла setup.py:

--------------------------------------------------------------
from distutils.core import setup

setup(packages=['package1',
        'package2.moda',
        'main_package'],
    package_dir={'package1': '../Framework/package1', 
        'package2.moda': '../Framework/package2', 
        'main_package': 'src/main_package'})

--------------------------------------------------------------

Вот проблемы:

  • Не создаются каталоги dist или build

  • Файл манифеста создается, но перечислены все модули в пакете2, а не только модуль "moda.py"

  • Строка завершается с ошибкой: README.txt: некорректная функция

Я не знаю, есть ли у меня одна проблема (возможно, связанная с моей строкой в ​​каталоге), или если у меня несколько проблем, но я прочитал все, что могу найти при распространении приложений Python, и я в тупике.

4b9b3361

Ответ 1

IIUC правильно, пути в package_dir должны останавливаться в родительском каталоге каталогов, которые являются пакетами Python. IOW попробуйте следующее:

package_dir={'package1': '../Framework', 
             'package2': '../Framework', 
             'main_package': 'src'})