2012-04-29 10 views
0

Я пытаюсь сделать свою программу с py2exe. Он использует графический интерфейс свойств.
После перемещения оператора импорта в image.py в функции «convert_image» из блока попробуйте сделать упаковал ех терпит неудачу на втором из следующих пунктов:
py2exe traits GUI

1: расстояние \ traitsui \ ui_traits.py: от. image.image импорт ImageLibrary
2: расстояние \ traitsui \ образ \ image.py: от traitsui.ui_traits импорта HasBorder, HasMargin, Alignment

Структура файла:

root 
+-... 
+-main.py 
+-setup.py 
+-dist 
    +-... 
    +-main.exe 
    +-traitsui 
    +-... 
    +-ui_tratis.py 
    +-image 
     +-image.py 

добавляя последующих кimage.py

import sys 
raise Exception(str(sys.path)) 

я получаю: Exception: [ 'C: \ Users \ ... \ Dist.]
Таким образом, кажется, что путь установлен правильно.


Трассировка ошибка:

Traceback (most recent call last): 
    File "main.py", line 8, in <module> 
    File "gui\FileSelect.pyc", line 8, in <module> 
    File "traitsui\api.pyc", line 27, in <module> 
    File "traitsui\basic_editor_factory.pyc", line 30, in <module> 
    File "traitsui\editor_factory.pyc", line 32, in <module> 
    File "traitsui\helper.pyc", line 32, in <module> 
    File "C:\Users\...\dist\.\traitsui\ui_traits.py", line 158, in <module> 
    from .image.image import ImageLibrary 
    File "C:\Users\...\dist\.\traitsui\image\image.py", line 34, in <module> 
    from traitsui.ui_traits import HasBorder, HasMargin, Alignment 
ImportError: cannot import name HasBorder 

setup.py: https://gist.github.com/2570888

+0

нет файла library.zip? – jadkik94

+0

для отладки Я использую «skip_archive»: True – KR2

+0

Я только что протестировал «skip_archive»: False, и он тоже не работает – KR2

ответ

0

hmm it seams, что было что-то неправильно с пакетом Enthoughth, который я использовал для изображений.

Так вот новый установочный файл, который не работает: https://gist.github.com/2570888

0

Попробуйте добавить packages: ["traitsui"] к py2exe опций «s словарь (с опцией skip_archive).

Я думаю, что py2exe не обнаружил, что используется пакет traitsui.ui_traits. Вам нужно заставить его включить весь пакет traitsui в дистрибутив.

Примечание: Просто догадаться, не проверено.

+0

hmm no Я добавил traitsui и теперь явно traitsui.ui_traits, но это также не помогло. Я добавил мой setup.py выше. – KR2

Смежные вопросы