我在Netbeans中编写了一个Java程序来使用poi库编辑Excel文件 该代码在 Netbeans 中工作正常,但是在构建 jar 文件并通过命令提示符执行它之后,当调用某个存在外部 jar 的函数时会出现错误。
但是我已将目标代码包含在 bulid.xml 中。在 store 中创建的 jar 文件也不起作用,并且在 dist 文件夹中创建的 jar 文件也出现此错误:
线程“AWT-EventQueue-0”中的异常 java.lang.Nosuchmethoderror: org.apache.xmlbeans.xmloptions.setsaveaggresivenamespaces()Lorg/apache/xmlbeans/xmloptions;
我已经检查了 jar 文件中存在 org.apache.xmlbeans.xmloptions
类。
有什么想法吗?
最佳答案
Exception in thread "AWT-EventQueue-0" java.lang.Nosuchmethoderror:
类路径中的 jar 版本似乎错误。比您的代码版本更低(或更高)的 jar 版本。
i have checked the class org.apache.xmlbeans.xmloptions
它并不是提示找不到类,而是说类路径中可用的类与您在代码中调用的类具有不同的方法签名。
示例:Jar 有方法 add(int a, int b);但你的代码调用(int a);
关于Netbeans 中的 Java 代码可以工作,但通过 cmd 提示符执行 jar 会出现 nosuchmethod 错误异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11540501/