我正在使用jython并调用一些自定义的Java API,我添加了我需要的所有jar或我在代码中使用的jar,jython仍然抱怨找不到一个类(NoClassDefFoundError),我不知道为什么,我检查了路径中的所有jar,并且我在路径中的一个jar中有这个类。
这就是我运行代码的方式
jython -Dpython.path=a.jar:b.jar:c.jar client.py
它抱怨c.jar中的一个类,不知道为什么会发生这种情况。我是不是错过了jython的一些额外选项(我没有在这个路径中包括jython.jar)
编辑:我自己也在尝试解决这个问题,我发现在CLASSPATH中添加相同的jar文件(比如export CLASSPATH=$CLASSPATH:a.jar:b.jar…)并运行jython client.py效果很好。这是一个奇怪的行为,我很高兴我比我想象的
我认为jython希望Classpath上有Java类。。。
也许这会有所帮助:
Classloader故障