jpype调用java,class not found操作,文件路径不要有中文


JDClass = jpype.JClass("JpypeDemo")

File "D:\Compile_software\anaconda3\lib\site-packages\jpype\_jclass.py", line 99, in __new__

return _jpype._getClass(jc)

TypeError: Class yourxxxClass is not found


文件路径不能带有中文。


在我使用jpype调用java代码,程序一直报错class not found。先开始我以为是jar文件编码问题,甚至也认为java和python的位数不一致,后来发现这些都不是。
直到我把jar包放入当前目录下,使用./xxx.jar,然后程序不报错,看了眼路径,里面居然带有中文。

 一个小习惯,放代码的文件夹,不要带有任何的中文

 

一个简单的模板

1 import jpype
2 jvmPath = jpype.getDefaultJVMPath()  #启动java虚拟机
3 jpype.startJVM(jvmPath, "-ea", "-Djava.class.path=./emailWeb.jar") #jar包路径
4 class_path = "com.example.emailWeb.service.client.Sender" # class的package
5 JClass = jpype.JClass(class_path) #获取类,输入参数为类的路径
6 instance = JClass()  #实例化为对象
7 a = instance.getA() # class的函数
8 print(a)
9 jpype.shutdownJVM() #关闭虚拟机

 

如果你的工程很庞大,可以看看这篇文章,我是通过这篇文章成功打成了jar包。
https://www.cnblogs.com/Bruce_H21/p/9909198.html


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM