我是靠谱客的博主 笑点低金鱼,最近开发中收集的这篇文章主要介绍no manifiest section for signature file entry 问题解决一、问题描述二、问题分析三、问题解决,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
一、问题描述
- 在idea中启动一个小的java程序,没问题,但打成jar包后,运行报错:Error: A JNI error has occurred, please check your installation and try again
Exception in thread “main” java.lang.SecurityException: no manifiest section for signature file entry com/microsoft/sqlserver/jdbc/InputStreamGetterArgs.class
二、问题分析
- 就“Error: A JNI error has occurred, please check your installation and try again”错误而言,网上解答说是jdk环境的问题,排查后发现不是。而后部分异常信息“Exception in thread “main” java.lang.SecurityException: no manifiest section for signature file entry com/microsoft/sqlserver/jdbc/InputStreamGetterArgs.class”则可以推测错误出在sqljdbc.jar这个依赖包中,去掉这个包的确可以正常启动(当然有些功能实现不了)
三、问题解决
- 网上找到了一个解决方案,开始还不太相信(同样的sqljdbc.jar在其他程序可以正常使用;看不懂重新打包有啥作用),但尝试后的确解决了问题。附解决方案如下:
- 打成的jar包运行出现这个异常,解决:
1、把源sqljdbc.jar驱动解压到sqljdbc目录
2、删除 sqljdbcMETA-INF目录中出mainfest.mf,zigbert.rsa 以外的文件。
3、修改 sqljdbcMETA-INF目录中的mainfest.mf ,保留第一行,其余删除
4、重新打包:进入sqljdbc目录,执行:jar cvf sqljdbc.jar . 注意这最后的一个点号不能掉(有空格)
5、将新打包的文件加入项目工程中即可。
最后
以上就是笑点低金鱼为你收集整理的no manifiest section for signature file entry 问题解决一、问题描述二、问题分析三、问题解决的全部内容,希望文章能够帮你解决no manifiest section for signature file entry 问题解决一、问题描述二、问题分析三、问题解决所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复