IntelliJ IDEA生成jar包运行报Error:A JNI error has occurred,please check your installation and try again

首先介绍一下IntelliJ IDEA生成jar包的方式:

1、打开项目,打开FIile->Project Structure...菜单.如下图:

 

选中Artifacts,点+号,选择JAR,再选择From modules with dependencies...,如下图:

 

在打开的界面中选择Main class:如下图示,会自动搜索到main class位置,选中确定即可。

 

JAR files from libraries有两个选项,extract to the target JAR和copy to the output directory and link via manifest,

extract to the target JAR:将第三方jar包打包到目标中,只生成一个jar包

copy to the output directoru and link via manfes:将第三方包copy的目标jar包目录,有多个jar包

我们首先选择第二项,如下图:

 

关于Directory for META-INF/MANIFEST.MF默认,不需要修改(网上有很多说要改的),点OK完成配置。

 

如果不改jar包名, 可以直接点OK完成。

接下来就是生成jar包,打开菜单Build->Build Artifacts...->Build,如下图:

 

 

生成结果如下:

 

运行Cknife-master.jar,成功:

 

我想大部分人不想这样有多个jar包,会选择生成一个包。我们接着做一下,重新打开FIile->Project Structure...菜单,将上一次的配置删除,点 - 号如图,重新添加:

 

 

这次选择extract to the target JAR,如下图:

 

如果出现以下错误,直接将src/META-INF/MANIFEST.MF文件删除,关闭Project Structure(不关闭还是报错,可能是bug)重新添加即可。

 

配置完成后,再次打开菜单Build->Build Artifacts...->Build,生成jar包如下图:

 

到此,似乎一切正常,来运行一下。

 

无法正常运行,这个错误在网上搜索,有说是java或javac版本问题,有说是MANIFEST.MF位置不对,其实解决办法很简单,将第三方jar包META-INF中的认证文件删除即可。如下图:

 

重新build后运行一切正常。

 

posted @ 2020-07-22 17:44  牧之丨  阅读(3323)  评论(2编辑  收藏  举报