2016-06-08 12 views
0

Так что я сделал небольшое приложение gui с помощью pygobject. Работает отлично и все, когда выполняется из каталога.Модуль Python не находит файл в MANIFEST.in

Пытался сделать пакет питона из него, но получить это каждый раз ошибка:

In [2]: pygofortune.pygofortune.main() 
--------------------------------------------------------------------------- 
Error          Traceback (most recent call last) 
<ipython-input-2-1e2e05b4c484> in <module>() 
----> 1 pygofortune.pygofortune.main() 

/usr/lib/python3.5/site-packages/pygofortune-0.1-py3.5.egg/pygofortune/pygofortune.py in main() 
    55 def main(): 
    56  builder = Gtk.Builder() 
---> 57  builder.add_from_file("fortune.glade") 
    58  builder.connect_signals(Handler()) 
    59  global win, buffer, about 

Error: g-file-error-quark: Failed to open file 'fortune.glade': No such file or directory (4) 

я имел включить файлы в MANIFEST.in.

Файлы также присутствовали в папке sitepackages пакета.

Любые идеи, что я, возможно, сделали неправильно

ответ

1

Имя файла без компонента пути будет искать относительно текущей рабочей директории, а не каталог, где установлен скрипт Python.

Я предлагаю использовать что-то вроде pkg_resources feature of Setuptools, чтобы установить ваши файлы данных в известное местоположение и получить их пути во время выполнения.