2011-11-11 17 views
0

hereと書いてありますが、UnixプラットフォームのソースコードでJythonを呼び出すことができます。WindowsのpythonソースコードからJythonインタプリタを呼び出す方法

私はJythonをインストールし、PATHにディレクトリをWindowsに配置しました。

どうすれば自動的に.pyコードからJythonを呼び出すことができますか?ありがとう。


の例では、より具体的かつ明確にする:

#!/usr/bin/env jython 
import sys 
sys.path.append("./package.jar") 
import org.abc.name 

ImportError: No module named org.abc.name

そして、私はCMDからJython bar.pyを実行した場合、それは仕事をしました。しかし、Python bar.pyを実行するとエラーが発生します。

答えて

2

ImportErrorはすでにPythonエラーです。したがって、jythonが動作しているようです。ただし、パスを設定する必要があります。

Pythonモジュールのいずれかを表す場合は、適切なディレクトリをインポートする前に設定してください(sys.path)。

Javaモジュールのいずれかを表す場合は、Java Classpathに適切なディレクトリまたはjarが含まれるように設定します。

xxxが組み込みモジュールを表している場合、おそらくまだjythonではサポートされていない可能性があります。 list of modules supported by jythonをご覧ください。他のPythonプラットフォーム(例えばjsonなど)で利用できる新しいモジュールは、まだjythonでは利用できません。

+0

sys.pathを設定しました。私は質問を更新しました、別の見方をすることができますか? – Flake

+0

@Flake 'sys.path'はPythonモジュール用です。 Javaコードをロードするには、クラスパスを設定します。答えを更新しました。 – phihag

0

あなたのjarパスは相対パスです。 Jythonでは、スクリプトの基本パスはCPythonとは異なる方法で計算されます。

jarファイルの絶対パスを相対パスではなくsys.pathに追加した場合、最初からうまくいくと思います。