遇到的问题:IDEA打包可执行jar包,报错Error: Invalid or corrupt jarfile jar
检索问题,看到各种千奇百怪的方法,比如:修改文件后使用jar命令重新打包,还有说要把MANIFEST.MF 大写修改为小写的manifest等,这里谈一种有效的解决方法。
解决方案适用性:IDEA(其它IDE尚未测试)
原因:IDEA中,在File\Project Structure\Artifacts\添加artifacts的时候,默认会在src/main/java/META_INF/下创建目录,但是此目录(src/main/java/)已标记为Sources Root,只编译;
解决方案:将src/main/java/META_INF剪切到目录src/main/resources/META_INF/,src/main/resources/是Resources Root,最后文件会拷贝到out目录。