报错SystemError: java.nio.file.InvalidPathException: Illegal char <:> at index 2
·
背景:使用jpype调用Java接口
代码如下:
from jpype import *
path = getDefaultJVMPath()
startJVM(path, "-ea")
java.lang.System.out.println("Hello World")
shutdownJVM()
报错:

发现错误过程:
看这个错误应该是路径有问题,\D:\Program Files\Java\jdk1.8.0_241\lib\tools.jar,看到这个前面多了一个“\”,手动去掉“\”,验证是不是这个原因
两种方式:
一、debug模式找到这个参数手动修改
classpath='.;D:\\Program Files\\Java\\jdk1.8.0_241\\lib\\dt.jar;D:\\Program Files\\Java\\jdk1.8.0_241\\lib\\tools.jar;D:\\Program Files\\Java\\jdk1.8.0_241\\bin;.'
二、通过指定参数直接修改
from jpype import *
path = getDefaultJVMPath()
# startJVM(path, "-ea")
startJVM(path, "-ea",
classpath='.;D:\\Program Files\\Java\\jdk1.8.0_241\\lib\\dt.jar;D:\\Program Files\\Java\\jdk1.8.0_241\\lib\\tools.jar;D:\\Program Files\\Java\\jdk1.8.0_241\\bin;.')
java.lang.System.out.println("Hello World")
shutdownJVM()
错误消除
彻底修改:
程序读的应该是本机环境变量直接设置好的CLASSPATH,检查环境变量

果然多了一个“\”,手动删除后重启电脑生效
重新验证:

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)