使用IDEA通过MAVEN创建quickstart项目后,添加了Artifacts,发现生成的jar包无法run,出现下面的错误:
Error: Invalid or corrupt jarfile D:\WorkSpace\JavaStudy*\out\artifacts*_jar*.jar
于是自己先尝试了很多方法,通过对比发现jar包里面根本没有META_INF文件夹,这就是jar无法运行的根本原因;
于是继续bing搜索,找到了如下解决办法:
Make sure your MANIFEST.MF is in:
src/main/resources/META_INF/
NOT
src/main/java/META_INF/
<br>问题分析:<br><span>IDEA中,在File\Project Structure\Artifacts\添加artifacts的时候,默认会在<code>src/main/java/META_INF/</code><code>下创建目录,但是此目录(<code>src/main/java/</code>)已标记为Sources Root,仅编译;<br>所以应该将<code>src/main/java/META_INF</code>剪切到<code>src/main/resources/META_INF/,<code>src/main/resources/</code>是Resources Root,会拷贝到out目录</code><code><br></code></code></span><br>感谢老外的这个帖子<a href="https://stackoverflow.com/questions/20952713/wrong-manifest-mf-in-intellij-idea-created-jar" rel="noopener">stackoverflow.com
</a>
Original: https://www.cnblogs.com/zjoch/p/7646042.html
Author: 遥望星空
Title: Error: Invalid or corrupt jarfile
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/545928/
转载文章受原作者版权保护。转载请注明原作者出处!