我面临一个奇怪的错误,我在我的java应用程序中添加了一个新jar(使用Netbeans),这个jar包含一个名为Strings的java类。
当我对这个类进行反编译时,我发现了一个名为 isBlank()的方法。
但是一旦这个jar添加到我的librairy并且我的程序运行了;显示错误消息" java.lang.NoSuchMethodError:com.wm.util.Strings.isBlank(Ljava / lang / String;)Z "并且我非常确定该方法是由附加的屏幕adding jar
展示的由于
答案 0 :(得分:0)
修正了,我发现其他JAR包含使用不同方法的相同类。因此在编译过程中,编译器正在从争夺JAR中获取类 解决方案:我删除了不受欢迎的jar
答案 1 :(得分:0)
我有同样的错误。这里的问题是isBlank仅从Java 11开始可用,但pom中的编译器设置为8。但是由于11安装在本地计算机上,因此我可以编译,并且仅在稍后运行程序时才注意到该问题。我真的很不高兴,甚至没有警告。