Python distutils не включает в себя data_files - PullRequest
19 голосов
/ 08 июня 2010

Я новичок в distutils .. Я пытаюсь включить несколько файлов данных вместе с пакетом .. вот мой код ..

from distutils.core import setup

setup(name='Scrapper',
      version='1.0',
      description='Scrapper',      
      packages=['app', 'db', 'model', 'util'],
      data_files=[('app', ['app/scrapper.db'])]      
     )

Файл zip, созданный после выполнения python setup.py sdist, не включает файл scrapper.db. У меня есть файл scrapper.db в каталоге приложения ..

спасибо за помощь.

Ответы [ 2 ]

21 голосов
/ 08 июня 2010

Возможно, вам нужно добавить файл MANIFEST.in, содержащий "include app/scrapper.db".

Это ошибка в distutils, которая делает это необходимым: все, что в data_files или package_data должно быть включено в сгенерированный MANIFEST автоматически. Но в Python 2.6 и более ранних версиях это не так, поэтому вы должны включить его в MANIFEST.in.

Ошибка исправлена ​​в Python 2.7.

1 голос
/ 10 июня 2010

Попробуйте удалить MANIFEST, таким образом distutils будет вынужден его регенерировать.

Примечание: я использовал python 3.x, поэтому я не знаю, работает ли это с 2.x или нет.

...