解决Maven仓库中异常jar包导致的invalid LOC header (bad signature)问题。

问题

最近,在研究mycat。把mycat-server源代码工程导入eclipse后,发现编译报错:

报无法识别DateTime类型:DateTime cannot be resolved to a type

分析

经分析,该类对应的jar包已经存在(pom中已经定义对应的依赖)

通过Open Type确定找不到DateTime类。

后来,通过Project Explorer,找到Maven Dependencies中对应类,双击它,发现了问题:

invalid LOC header (bad signature)

java.util.zip.ZipException: invalid LOC header (bad signature)
    at java.util.zip.ZipFile.read(Native Method)
    at java.util.zip.ZipFile.access$1400(Unknown Source)
    at java.util.zip.ZipFile$ZipFileInputStream.read(Unknown Source)
    at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(Unknown Source)
    at java.util.zip.InflaterInputStream.read(Unknown Source)
    at java.io.BufferedInputStream.read1(Unknown Source)

由此,可以定位出该类对应的jar出问题了,于是找到Maven对应目录:

解决

删除该jar目录下所有的文件,然后右键工程,Maven -》Update Project,重新下载jar包。

问题得以解决。

文章结束。

猜你喜欢

转载自blog.csdn.net/cysunc/article/details/86264452