编译时报找不到main方法错误

IDEA 找不到Main方法


在写快排的时候,前一刻还把代码给运行成功了,后来偶然的就运行不了。运行代码发现报 找不到main方法异常,在上方导航栏处该类也显示错误。

错误: 在类 e_sort.QuickSort 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application

编译时报找不到main方法错误

很是迷惑好端端的为啥突然不能运行了,经过一手百度后找到原因。想起来自己在其中创建了一个字符串对象,而在导包的时候不是导的 “java.lang”包下的String,而是其他包(import com.sun.org.apache.xpath.internal.operations.String;)下的String类,因此引发main方法里的String[] args 参数异常,进而找不到main方法。
编译时报找不到main方法错误

在报错时,这里也有提示。

错误: 在类 e_sort.QuickSort 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application

报错的原因与类的加载机制有关(双亲委派机制),具体不解释了。
我的理解为main方法里的参数(String[] args)需要创建的是Java.lang包下的String,而导入其他包时,导致main方法里的String不是main方法想要的,所以找不到main方法而报错。当然也可以根据提示扩展其他类加载方式而启动运行该类。

知道原因了,办法也就解决了,将该导包记录删除也就能正式运行了。