正常情况下,运行java程序
java test #运行 test.class文件,不要加后缀名即可运行
java -jar test.jar #运行 有入口类的可独立运行的 jar包
有入口类的jar包:包里的MANIFEST.MF文件中已设置了入口类的名字。
入口类:即main函数所在的类。
运行java程序时,报错:“找不到或无法加载主类”
在intelliJ IDEA 下,工程结构已经指定了构建jar包的入口类的名称,但实际上生成的jar包中的清单文件MANIFEST.MF并没有
Main-Class:
这一行!
就是没有入口类的jar包。
- 解决办法1:手工添加Main-Class
用压缩工具打开jar文件 编辑META-INF目录下的MANIFEST.MF文件 保证前两行为:
Manifest-Version: 1.0
Main-Class: Main
Main
应该改为你的工程的入口类名!
- 解决办法2: 运行时再指定入口类名
jar包中没有入口类 用-cp / --classpath
指定classpath
java -cp HelloWorld.jar org.test.HelloWorld
org和test是包名,最后的Helloword是入口类名。
网友评论