2011-07-13 14 views
2

PythonでEclipse/PyDevで開発したアプリケーションでインポートに問題があります。 Eclipse内からアプリケーションを実行することは問題ありませんが、Linux端末で実行すると、他のフォルダ(Eclipseのパッケージ)からインポートされたインポートが破損し、ImportError:xxxというモジュールがありません。端末でPyDevで開発されたアプリケーションを実行する際の問題

EclipseでJavaアプリケーションを開発してきた経験から、プロジェクトを実行可能なjarファイルにエクスポートすることでこれを解決しましたが、これはPythonのオプションではありません。

これを回避する方法はありますか?私はパッケージシステム(Javaが私を傷つけていると思う)が非常に好きなので、すべての.pyファイルを1つのフォルダに入れないでください。 Eclipseとターミナルの両方で動作するようにインポートステートメントを変更することはできますか、ターミナルでこれを動作させるにはPyDevを放棄する必要がありますか?

ありがとうございました!ここ

スリム

答えて

2

キーを使用すると、Eclipse内起動しているときにPyDevはとEclipseはカスタムPythonのパスを管理することです。インポート元の場所を含むより完全なPYTHONPATH値を含むように環境変数を変更するか、sys.path.append()を使用して、インポート時にパスにディレクトリを追加してインポートを解決することができます。

+0

私のやりたいこととまったく同じですね。しかし私はPythonの経験が限られています。この例を見てどうすればよいでしょうか: フォルダA、B、Main mainでmain.py( "実行"ファイル)をフォルダAとBからインポート – Slim

+0

まあ、sys.path .append()は動作するが、私はむしろターミナルからのパスを追加し、それらを自分のファイルにハードコードしないという別の方法をとるだろう。 – Slim

+0

@Slim - ここで利用可能な検索パスに関するドキュメントがいくつかある: /docs.python.org/tutorial/modules.html#the-module-search-pathあなたが 'sys.path.append'を動作させれば、それは近いと思えます。 :) –

関連する問題