我正在使用带有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的一般问题?
答案 0 :(得分:0)
JPype不直接调用java二进制文件。它使用jni库。可能-cp只是java二进制文件的一个选项。这同样适用于CLASSPATH环境。
如果要在类路径中使用多个jar文件或目录,可以使用-Djava.class.path
并将元素与系统的路径分隔符连接起来。您可以将os.path.pathsep.join
用于此目的。