新Java开发人员遇到的一个常见问题是,他们的程序无法运行,并显示错误消息:无法找到或加载主类。。。
这意味着什么,是什么导致的,你应该如何解决?
新Java开发人员遇到的一个常见问题是,他们的程序无法运行,并显示错误消息:无法找到或加载主类。。。
这意味着什么,是什么导致的,你应该如何解决?
当前回答
修复它的最简单方法是在这里重新下载Maven Apache:https://maven.apache.org/download.cgi
然后再次设置路径:
系统变量
将您设置Apache Maven文件夹的路径设置为:C:\Program Files\Apache-Maven-3.8.4\bin
重新启动终端或IDE,它应该可以工作。
它总是对我有用。
其他回答
这基本上意味着没有静态main(String[]args)方法。它应该自动解决。如果没有,那么当程序被制作(它没有主方法)或程序被打包(清单信息不正确)时,就会出现问题
这是可行的
public class Hello {
public static void main(String[] args) {
System.out.println("Hello");
}
}
这行不通
public class Hello {
public Hello() {
System.out.println("Hello");
}
}
如果是Maven项目:
转到POM文件。删除所有依赖项。保存POM文件。再次只导入必要的依赖项。保存POM文件。
这个问题应该消失。
如果使用Maven构建JAR文件,请确保在pom.xml文件中指定主类:
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>class name us.com.test.abc.MyMainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
使用此命令:
java -cp . [PACKAGE.]CLASSNAME
示例:如果类名是从Hello.java创建的Hello.class,则使用以下命令:
java -cp . Hello
如果文件Hello.java位于com.demo包中,请使用以下命令
java -cp . com.demo.Hello
在JDK8中,类文件多次出现在同一文件夹中,但java命令需要类路径,因此我们添加了-cp。将当前文件夹作为类路径的参考。
在Windows上放置。;在开头的CLASSPATH值处。
这个(dot)表示“查看当前目录”。这是一个永久的解决方案。
此外,您还可以通过设置CLASSPATH=%CLASSPATH%;将其设置为“一次”;。。这将在cmd窗口打开时持续。