IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数

写一个简单的程序,main函数是执行入口,用idea 导出成jar文件,放到Linux 执行  java  -jar   报错 

no main manifest attribute

拿eclipse导出能完美运行,排除是程序的问题。。

查了很多idea导出jar教程,都没有解决

后来用压缩文件打开jar包对比,发现 程序的入口配置文件  META-INF/MANIFEST.MF内容不一样

问题产生原因是:MANIFEST.MF的路劲错配到 src/main/java/META_INF/

而 idea 需要确保MANIFEST.MF的路劲在src/main/resources/META_INF/下,才会把正确的MANIFEST.MF复制到jar中。

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第1张图片

总结:这算是一个坑吧,毕竟用eclipse导出就很方便,不用搞没那么多配置。

两种解决方法

1、直接将有问题的jar用压缩文件打开,把里面的META-INF/MANIFEST.MF文件改了

      加上Main-Class: main函数包路径

2、按照上图的方法修改idea的导出配置

这里补充idea 打包的整个操作步骤,如果解决不了的朋友   仔细比对一下^_^

1、目标:打包下面这个程序成jar 文件,使之可以  java -jar  xx.jar 能运行

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第2张图片

2、配置步骤(准备工作)

 IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第3张图片

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第4张图片

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第5张图片

注意:如果这里确定之后报错。那就先把META-INF 文件夹 删除掉 。否则跳过

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第6张图片

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第7张图片

继续 

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第8张图片

 3、打包步骤

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第9张图片

等进度条走完就可以去拿jar包了(路径就是 配置步骤的 第⑨点)

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第10张图片

 

4、运行

IntelliJ IDEA导出 jar文件 运行不了,no main manifest attribute,找不到main函数_第11张图片

 

-

-

-

完毕 

你可能感兴趣的:(intellij,idea,应用,#,Linux,软件部署)