1

特定の種類のファイルを自動的に処理するために使用する小さな Python スクリプトを自分で作成しました。.appそのため、特定のファイルを自動的に開くように設定できるように、それを作成したいと考えています。

それで私は周りを見回して、私が必要とすることをしているように見えるPlatypusを見つけました.

しかし、奇妙なことに、それは機能しません。具体的には、適切な python インタープリターが見つからないようです。次のように設定しました。

ここに画像の説明を入力

つまり、スクリプトの種類はenv、シェルのようにファイルの先頭行を読み取るだけです。

ではmagic.py、一番上の行は#!/usr/bin/env python2.7です。

これで、コマンド ライン (つまり~/devel/magic.py whatever) でシェル スクリプトを実行すると、すべて正常に動作します。しかし、アプリを実行すると、次のエラーが発生します。

Traceback (most recent call last):
  File "/Users/jan/Dropbox/devel/Magic.app/Contents/Resources/script", line 8, in <module>
    from bencode import *
ImportError: No module named bencode

コマンドラインから実行すると同じインポートがうまく機能するので、どういうわけか間違ったインタープリターを使用していると思います。これを修正またはデバッグするにはどうすればよいですか?

4

1 に答える 1

3

モジュールからインポートしようとしてbencodeいますが、アプリケーションのバンドルされたリソースに追加していません。含まれているファイルのリストにドラッグして再度エクスポートするか、パッケージのコンテンツのリソースフォルダーにコピーします。

于 2013-03-23T22:26:57.993 に答える