py2exeでTwistedプログラムをパッケージ化する方法は?
質問
py2exeを使用してTwistedプログラムをパッケージ化しようとしましたが、ビルドしたexeファイルを実行すると、「resource moduleという名前のモジュールはありません」というメッセージが表示されました。エラー。
そして、私はpy2exeが言ったことを見つけました:
次のモジュールが欠落しているようです['FCNTL'、 'OpenSSL'、 'email.Generator'、 'email.Iterators'、 'email.Utils'、 'pkg_resources'、 'pywintypes'、 'resource'、 ' win32api」、「win32con」、「win32event」、「win32file」、「win32pipe」、「win32process」、「win32security」]
では、この問題をどのように解決しますか?
ありがとう。
解決
これは以前に見たことがあります... py2exeは、何らかの理由で、これらのモジュールがZIPアーカイブ内に必要であることを検出せず、除外しています。
py2exeコマンドラインに含めるモジュールを明示的に指定できます。
python setup.py py2exe -p win32com -i twisted.web.resource
そのようなもの。オプションと実験を読んでください。
他のヒント
メールモジュールでも同じ問題が発生しました。 setup.pyにモジュールを明示的に含めることで機能しました:
OLD setup.py:
setup(console = ['main.py'])
新しいsetup.py:
setup(console = ['main.py'],
options={"py2exe":{"includes":["email.mime.multipart","email.mime.text"]}})
所属していません StackOverflow