0

次のように、Pythonを使用して指定されたJavaクラスのJVMを実行しています。

import subprocess
output = subprocess.check_output("java MyJavaClass")

ただし、JavaクラスはPythonスクリプトと同じディレクトリにないため、これは機能しません。2つ上のbinディレクトリにあります。

だから私は以下のようなことができることを望んでいましたが、それはうまくいきません:

output = subprocess.check_output("java ../../bin/MyJavaClass")

何か案は?

4

2 に答える 2

3

次のようにクラスパスを設定する必要があります。

java -classpath ../../bin MyJavaClass

クラスが特定のパッケージに属している場合は、FQN(完全修飾名)を使用する必要があることに注意してください。

java -classpath ../../bin my.package.MyJavaClass
于 2012-05-01T11:57:52.850 に答える
1

試す

output = subprocess.check_output("java MyJavaClass", cwd="../../bin/")

Javaを実行する場合、ディレクトリ構造はパッケージ構造を意味するため、(クラスパスを使用しない限り)正しいディレクトリからJavaを実行する必要があります。

于 2012-05-01T12:01:52.390 に答える