py2appを使ってスタンドアロンOS Xアプリに変えたいGUIを書いたことがあります。 Py2appは正常に次のコマンドを使用して、スタンドアロンのOS Xバンドルを生成した:pythonを使う3.6 + py2app:なぜpycファイルが生成されますか?
$ py2applet --make-setup superGui.py
$ python3 setup.py py2app
私のsetup.pyは次のようになります。
from setuptools import setup
APP = ['/Users/username/PycharmProjects/gui/superGui.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True,
'plist': {'LSUIElement': True,},
'includes':['rumps'],}
setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
私はthis documentationに基づいてrumpsパッケージとLSUIElementを追加しました。私はそれらの有無にかかわらず同じエラーがあります。
しかし私はアプリを実行しようとすると:私は私のログに次のエラーメッセージが表示されます
$ open dist/superGui.app
:
06/01/17 12:42:51,321 superGui[55597]: File "<frozen importlib._bootstrap>", line 961, in _find_and_load
06/01/17 12:42:51,322 superGui[55597]: File "<frozen importlib._bootstrap>", line 950, in _find_and_load_unlocked
06/01/17 12:42:51,322 superGui[55597]: File "<frozen importlib._bootstrap>", line 646, in _load_unlocked
06/01/17 12:42:51,322 superGui[55597]: File "<frozen importlib._bootstrap>", line 616, in _load_backward_compatible
06/01/17 12:42:51,322 superGui[55597]: File "scrapy/__init__.pyc", line 10, in <module>
06/01/17 12:42:51,322 superGui[55597]: File "pkgutil.pyc", line 616, in get_data
06/01/17 12:42:51,322 superGui[55597]: File "importlib/util.pyc", line 83, in find_spec
06/01/17 12:42:51,322 superGui[55597]: AttributeError: 'NoneType' object has no attribute 'startswith'
I以下の質問があります。
- を
この問題を解決するにはどうすればよいですか?
"importlib/util.pyc"のfind_specを調べているときにエラーが発生したようです。なぜ私はPython 3.6を使用しているのでpy2appがpycファイルで動作するのか分かりません。 Python 3.6はpycファイルをもう使用しません。これは何らかの理由でpy2appが2.7のパスを使用するために起こりますか? (私もPython 2.7がインストールされています)
IDLE 3.6で "importlib/util.pyc"を開くことはできません(これはPython 3.6がpycファイルをもうサポートしていないからです)。それはIDLE 2.7で私はちょうど白い画面でウィンドウを取得します。このファイルを正常に開いて、エラーをよりよく理解するにはどうすればよいですか?
ありがとうございます!
こんにちは残念ながら、3.4にはならなかった。私も3.3を試してみます(py2appはpython2とpython3.3 +しかサポートしていないので、これ以上下がることはできません)。残念ながら、importlib/util.pyファイルはありません。私はPythonに少し失望していると言わざるを得ません。スタンドアロンのアプリケーションを作成するための裸のサポートがあります。 :( – titusAdam
スタンドアロンのアプリは、うまくいきません。なぜなら、うまくいけないのはなぜか分かりませんが、言語そのものとその周辺の図書館のインフラストラクチャは、多くのプログラミング分野。 –