ZipException:运行应用程序时无效距离太远的错误

问题描述 投票:4回答:4

我有一个使用Resteasy作为后端api / service的GWT应用程序,该项目正常工作,但当我将项目移动到另一台机器并运行它时,我在执行GWT运行时遇到此错误:

Caused by: java.util.zip.ZipException: invalid distance too far back
    at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:164)
    at java.util.zip.ZipInputStream.read(ZipInputStream.java:193)
    at java.util.jar.JarInputStream.read(JarInputStream.java:207)
    at org.scannotation.archiveiterator.InputStreamWrapper.read(InputStreamWrapper.java:36)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:254)
    at java.io.DataInputStream.readInt(DataInputStream.java:387)
    at javassist.bytecode.ClassFile.read(ClassFile.java:731)
    at javassist.bytecode.ClassFile.<init>(ClassFile.java:108)
    at org.scannotation.AnnotationDB.scanClass(AnnotationDB.java:343)
    at org.scannotation.AnnotationDB.scanArchives(AnnotationDB.java:326)
    at org.jboss.resteasy.plugins.server.servlet.ConfigurationBootstrap.createDeployment(ConfigurationBootstrap.java:163)
    ... 24 more

可能是什么问题呢?

  • 是GWT罐还是Resteasy? ZipException是什么意思?这是否意味着依赖损坏?
java gwt resteasy
4个回答
6
投票

我将在这里说你有一个类兼容性错误或损坏的Jars(看看调用堆栈,它试图从jar文件加载类)。

验证两个系统上是否具有完全相同的Java版本,然后将整个项目从工作主机复制到非工作主机。你可能有一个腐败的罐子。

基本上确保一切都是相同的,然后再试一次


2
投票

有时您的防火墙会破坏ftp连接,因此请尝试在您使用的防火墙上保留java 7的异常。在Windows 7中它是:

netsh advfirewall set global statefulftp disable 

通过以管理员身份运行命令提示符来完成。


1
投票

基本上我的项目是在Bitbucket托管。所以我做的是创建一个文件夹,作为新的工作区文件夹。然后,git clone那里的项目。然后发出mvn clean install和mvn gwt:run然后一切正常。


0
投票

我不知道你的问题是否相同,但我遇到了同样的错误,并发现它与Firefox版本> 10.0有关。出于某种原因,Firefox转换任何“!”字符变成“%21”。

在我的cenario中,由于这个事实,我的应用程序在渲染图像时触发了此错误。 Chrome上也没有发生同样的情况。

可以通过实现Filter来处理请求来处理这种情况。

如果此案例符合您的问题,请查看以下帖子:qazxsw poi

© www.soinside.com 2019 - 2024. All rights reserved.