一、错误原因
bad signature 表明你使用的jar包损坏了。每个jar包最初生成时为了安全都会有一个数字签名(一旦生成会改变),以防止别人对jar包进行篡改,因为jar包里的文件内容一旦改变,使用某个算法根据文件内容计算出的数字签名和最初发布jar包时的数字签名不一致。在你使用jar包时,首先会验证数字签名,bad signature ,文件不一致,为了安全,就不可以使用了,这也是java安全机制之一。
唠叨几句:查看了网上很多解决方案,大多都是说如何解决。有的只是针对具体的问题,别人和他的根本不是一个问题。有点还好,问题解决了,但不知到问题出在哪里。挺难受。
另外:这个 Loc 可能是代表着数字签名吧,实在是查不到
二、解决
找出损坏jar包,并替换
。
如果是maven工程和eclipse(或myeclipse)
我的是:jackson-data.jar版本2.7,更换了版本为2.6。
如果是其他项目管理工具,自己百度相关方法吧,
反正是jar包有问题
,不能用了。
实在不行,你一次替换一个jar包,然后去运行tomcat,直到成功。这个控制变量法也可以解决。
找哪个
jar包
出现了问题:
方法1、可通过右击项目名 -> Run as -> Maven test ,这时控制台会报哪个
jar包
出错。 (也可以打开DOS命令窗口,切换至项目目录,运行mvn test命令,和Eclipse的控制台输出信息一致)
方法2、如果方法1未出现任何错误信息,那么就使用笨办法。打开项目中的pom.xml文件,在自己的Maven本地仓库去查找pom.xml...
严重 [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:org.apache.catalina.Life...
原因及解析:
错误的内容是: xx.jar这个文件出错,无效的
LOC
头(错误的签名)。
LOC
可以认为是 Length Of Code的简写。也就是文件的大小, 那这里的签名有做和解释呢?
出于安全性考虑, 一般...
在 Tomcat 中启动 Maven 项目,发现报错【
java
.
util
.
zip
.
Zip
Exception
:
invalid
LOC
header
(
bad
signature
)】,具体如下八月 18, 2016 6:02:01 下午 org.apache.catalina.startup.ContextConfig processAnnotationsJar严重: Unable to proce...
配置 Fiddler 抓取 Https 请求时遇到了这个问题。
cmd 下输入 certmgr.msc > 操作 > 查找证书,然后输入 Fiddler 搜索,选中所有搜索出的证书;
清空 C:\Users\Dell\AppData\Roaming\Microsoft\Crypto\RSA 下的文件;
卸载 Fiddler;
火狐 选项 > 隐私与安全 > 证书 > ...
2020-07-15 16:54:14.859 ERROR 25627 --- [io-8022-exec-11] o.apache.coyote.http11.Http11Processor : Error processing request