setup.py в python, показывающий «ModuleNotFoundError: модуль не назван», хотя он существует и существует - PullRequest
0 голосов
/ 26 октября 2019

У меня есть небольшое приложение в папке структуры 'base' и дочерняя папка с именем base> start . Для упаковки у меня есть setup.py в папке базы. Код которого

setup(name='bashed',
      version='0.1.0',
      packages=find_packages(),
      #packages=[start],
      entry_points={
          'console_scripts': [
              'bashed = start.__main__:main'
          ]
      },
      )

В дочерней папке ' start ' у меня есть файл с именем __ main __. Py с ' main 'method.

Когда я запускаю команду

python setup.py install

с последующим

bashed

Я получаю ошибку ModuleNotFoundError: Нет модуля с именем 'start'

Однако, когда я запускаю команду

python setup.py develop

с последующим

разбитым

Функция ' main ' in ' start .__ main__.py 'выполняется.

Я попытался использовать
packages = find_packages (), а также packages = [start] в setup.py, но не сработало

Содержимоеиз setup.py включает в себя

setup(name='bashed',
      version='0.1.0',
      packages=find_packages(),
      #packages=[start],
      entry_points={
          'console_scripts': [
              'bashed = start.__main__:main'
          ]
      },
      )

Содержимое запуска. main .py ниже

def main():
    print("This is the main routine.")

if __name__ == "__main__":
    main()

1 Ответ

1 голос
/ 26 октября 2019

Либо используйте packages=['start'] (обратите внимание на одинарные кавычки), либо, если вы используете packages=find_packages(), убедитесь, что у вас есть файл start/__init__.py.

...