SO上有许多问题How to fix java.lang.NoSuchMethodError。
正如我所看到的,获得此错误的最简单方法是创建一个类
class MyClass {} // no methods at all, for instance
没有正确定义main method, 编译并运行:
java MyClass
出现异常:
Exception in thread "main" java.lang.NoSuchMethodError: main
但这个例子太简单了。
任何人都可以提供简单的代码,
答案 0 :(得分:12)
NoSuchMethodError
,但在运行时,其他类没有该方法。所以你需要:
然后,如果你运行第一个类(使用main方法),它将在尝试在第二个类上调用该方法时抛出该错误(该方法不再存在)
这个例子在现实世界中很少发生。以下是发生错误时的一些实际案例:
答案 1 :(得分:2)
从一个类中创建一个类文件,该类在其main方法中使用某个Java版本> = 1.6.xxxx调用java.util.Properties.load(Reader)
。
尝试使用某些Java版本执行此类< 1.6.xxxx
原因:{6}在Java 6中引入。它被调用,但在此版本的Java中不存在。
这同样适用于更新中引入默认语言库的所有方法。