我使用JPype是为了处理python中的java类。我有一个包含多个自写.jar文件的文件夹.
我知道如何在漫长的过程中导入多个..jar:
...
CLASSPATH = "/path/to/jars/first.jar:/path/to/jars/second.jar"
jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % CLASSPATH)
MYLIB= jpype.JPackage("org").mylib
MyClass = MYLIB.MyClass
myObj = MyClass()这很好,但我认为可能有更好的方法。
我已经试过了
CLASSPATH = "/path/to/jars/*.jar"这是:
CLASSPATH = "/path/to/jars/*"在这两种情况下,都会发生以下错误:
user@user:~/path/to/python/$ python test.py
Traceback (most recent call last):
File "test.py", line 23, in <module>
myObj = MyClass()
File "/usr/local/lib/python2.7/dist-packages/JPype1-0.6.2-py2.7-linux-x86_64.egg/jpype/_jpackage.py", line 60, in __call__
raise TypeError("Package {0} is not Callable".format(self.__name))
TypeError: Package org.mylib.MyClass is not Callable我的问题:
有任何方法可以轻松导入JPype中包含多个..jar的文件夹吗?
发布于 2018-02-07 02:04:46
您可以使用Python代码加入jar文件列表,而无需硬编码。
f'{str.join(":", ["path/to/jars/"+name for name in os.listdir("path/to/jars")])}'https://stackoverflow.com/questions/44033891
复制相似问题