-cp选项在JPype中不起作用?

时间:2015-04-30 07:15:35

标签: java python jpype

我正在使用带有Python 2.7的jpype(来自加利福尼亚大学的jpype发行版),我正在尝试使用jar文件中的Java类。

如果我用

启动JVM,它可以正常工作
startJVM(getDefaultJVMPath(), "-ea", "-Djava.class.path=D:/jmf.jar")

但是,如果我正在使用

startJVM(getDefaultJVMPath(), "-ea", "-cp", "D:/jmf.jar")

startJVM(getDefaultJVMPath(), "-ea", "-cp D:/jmf.jar")

找不到该jar中的类...我也尝试使用

设置类路径
set CLASSPATH=".;D:\jmf.jar"

这两个都不起作用。

更重要的是,使用包含其他罐子的罐子似乎不起作用。这是我的发行版的问题还是这是JPype的一般问题?

1 个答案:

答案 0 :(得分:0)

JPype不直接调用java二进制文件。它使用jni库。可能-cp只是java二进制文件的一个选项。这同样适用于CLASSPATH环境。

如果要在类路径中使用多个jar文件或目录,可以使用-Djava.class.path并将元素与系统的路径分隔符连接起来。您可以将os.path.pathsep.join用于此目的。