2017-11-20 17 views
0

Ich verwendete py2exe versuchen, eine EXE-Datei für mein Python-Programm zu erstellen, wenn ich diesen Fehler mit dem folgenden Traceback erhalten.importerror: kein Modul mit dem Namen kwallet

Traceback (most recent call last): 
File "orchestrator.py", line 49, in <module> 
import process_text as proc 
File "process_text.pyc", line 14, in <module> 
File "utilfuncs.pyc", line 5, in <module> 
File "browsercookie\__init__.pyc", line 30, in <module> 
File "keyring\__init__.pyc", line 6, in <module> 
File "keyring\core.pyc", line 148, in <module> 
File "keyring\core.pyc", line 64, in init_backend 
File "keyring\util\__init__.pyc", line 20, in wrapper 
File "keyring\backend.pyc", line 179, in get_all_keyring 
File "keyring\backend.pyc", line 139, in _load_backends 
File "keyring\backend.pyc", line 131, in _load_backend 
File "importlib\__init__.pyc", line 37, in import_module 
ImportError: No module named kwallet 

Mein Hauptmodul (dasjenige, das das Haupt enthält) wird Orchestrator genannt. meine setup.py ist wie folgt

from distutils.core import setup 
import py2exe 
setup(
    console=['orchestrator.py'], 
    options = {"py2exe":{"includes":["browsercookie"]}} 
) 

ich windows bin mit 10 mit Python 2.7 ich einige graben tat aber nichts. Ich habe mit py2exe keine genauen oder nahen Übereinstimmungen mit diesem Fehler gefunden. vielen Dank im Voraus.

Antwort

0

Der Fehler ist da, weil py2exe "kwallet" Modul dynamisch lokalisieren kann.

kwallet in "keyring.backends" befindet sich

ich ähnliches Problem hatte, während cx-freeze verwenden, löste ich es von explicityly es definieren.

Für cx_freeze

packages=['atexit', "PySide", "jenkins", "packaging", 'client', 'keyring.backends.kwallet', 
           "keyring.backends.OS_X", "keyring.backends.SecretService", 
           "keyring.backends.Windows", "vulcantoolkit"] 
Verwandte Themen