GWT编译错误 - IncompatibleClassChangeError [英] GWT Compilation Error - IncompatibleClassChangeError

查看:125
本文介绍了GWT编译错误 - IncompatibleClassChangeError的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

编译项目时,我得到这个模糊的异常

 寻找预编译的归档。要禁用,请使用-Dgwt.usearchives = false 
加载存档模块:jar:file:< base> /。m2 / repository / com / google / gwt / gwt-user / 2.5.0 / gwt-user- 2.5.0.jar!/com/google/gwt/user/User.gwtar
[WARN]无法读取:jar:file:< base> /。m2 / repository / com / google / gwt / gwt -user / 2.5.0 / GWT-用户2.5.0.jar!/com/google/gwt/user/User.gwtar。跳过:java.io.InvalidClassException:com.google.gwt.dev.util.DiskCacheToken;局部类不相容:流classdesc的serialVersionUID = 3824090149180578568,局部类的serialVersionUID = -2622986784335128516
装入存档模块:罐子:文件:其中基> /平方米/库/ COM /谷歌/ GWT / GWT用户/ 2.5。 0 / gwt-user-2.5.0.jar!/com/google/gwt/core/Core.gwtar
[WARN]无法读取:jar:file:< base> /。m2 / repository / com /google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/core/Core.gwtar。跳过:java.io.InvalidClassException:com.google.gwt.dev.util.DiskCacheToken;局部类不相容:流classdesc的serialVersionUID = 3824090149180578568,局部类的serialVersionUID = -2622986784335128516
装入存档模块:罐子:文件:其中基> /平方米/库/ COM /谷歌/ GWT / GWT用户/ 2.5。 0 / gwt-user-2.5.0.jar!/com/google/gwt/regexp/RegExp.gwtar
[WARN]无法读取:jar:file:< base> /。m2 / repository / com /google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/regexp/RegExp.gwtar。跳过:java.io.InvalidClassException:com.google.gwt.dev.util.DiskCacheToken;局部类不相容:流classdesc的serialVersionUID = 3824090149180578568,局部类的serialVersionUID = -2622986784335128516
装入存档模块:罐子:文件:其中基> /平方米/库/ COM /谷歌/ GWT / GWT用户/ 2.5。 0 / gwt-user-2.5.0.jar!/com/google/web/bindery/event/Event.gwtar
加载存档模块:jar:file:< base> /。m2 / repository / com / google / gwt / gwt-user / 2.5.0 / gwt-user-2.5.0.jar!/com/google/gwt/xml/XML.gwtar
[WARN]无法读取:jar:file:< ;基地> /平方米/库/ COM /谷歌/ GWT / GWT用户/ 2.5.0 / GWT-用户2.5.0.jar /com/google/gwt/xml/XML.gwtar!。跳过:java.io.InvalidClassException:com.google.gwt.dev.util.DiskCacheToken;局部类不相容:流classdesc的serialVersionUID = 3824090149180578568,局部类的serialVersionUID = -2622986784335128516
装入存档模块:罐子:文件:其中基> /平方米/库/ COM /谷歌/ GWT / GWT用户/ 2.5。 0 / gwt-user-2.5.0.jar!/com/google/gwt/json/JSON.gwtar
[WARN]无法读取:jar:file:< base> /。m2 / repository / com /google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/json/JSON.gwtar。跳过:java.io.InvalidClassException:com.google.gwt.dev.util.DiskCacheToken;本地类不兼容:stream classdesc serialVersionUID = 3824090149180578568,本地类serialVersionUID = -2622986784335128516
找到0个缓存/存档单元。从缓存中使用0/4578个单位。
编译...
完成0%(ETR:93秒)
完成10%(ETR:56秒)
完成20%(ETR:37秒)
完成30%(ETR:25秒)
完成40%(ETR:18秒)
完成50%(ETR:14秒)
完成60%(ETR:10秒)
完成70%(ETR:7秒)
完成80%(ETR:5秒)
完成90%(ETR:2秒)
完成100%(ETR:0秒) )
在28.40秒内完成编译
[错误]意外的内部编译器错误
java.lang.IncompatibleClassChangeError:class com.google.gwt.dev.javac.BytecodeSignatureMaker $ CompileDependencyVisitor的接口com.google .gwt.dev.asm.ClassVisitor as super class
at java.lang.ClassLoader.defineClass1(Native Method)$ b $ java.util.ClassLoader.defineClass(ClassLoader.java:800)
在java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
在java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
在java.n在java.net.URLClassLoader上$ 100(URLClassLoader.java:71)
$ 1.run(URLClassLoader.java:361)在java.net.URLClassLoader上
$ 1.run(URLClassLoader.java :355)在java.security.AccessController.doPrivileged处使用
(Native方法)在java.net.URLClassLoader.findClass处使用
(URLClassLoader.java:354)在java.lang.ClassLoader.loadClass处使用
(ClassLoader.java:425)
at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:308)$ b $ at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
。在com.google.gwt.dev.javac.BytecodeSignatureMaker.visitCompileDependenciesInBytecode(BytecodeSignatureMaker.java:217)在com.google.gwt.dev.javac.BytecodeSignatureMaker.getCompileDependencySignature
(BytecodeSignatureMaker.java:199)
在com.google.gwt.dev.javac.CompiledClass.getSignatureHash(CompiledClass.java:152)
在com.google.gwt.dev.javac.Dependencies $ Ref。< init>(Dependencies.java: 42)
,位于com.google.gwt.dev.javac.Dependencies $ Ref。< init>(Dependencies.j ava:37)
位于com.google.gwt.dev.javac.Dependencies.resolve(Dependencies.java:114)
位于com.google.gwt.dev.javac.CompilationStateBuilder $ CompileMoreLater.compile( CompilationStateBuilder.java:311)
在com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:511)
在com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom( CompilationStateBuilder.java:434)
,位于com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:420)
位于com.google.gwt.dev.cfg.ModuleDef.getCompilationState( ModuleDef.java:485)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:241)
at com.google.gwt.dev.Precompile.precompile(Precompile.java: 223)
在com.google.gwt.dev.Precompile.precompile(Precompile.java:139)
在com.google.gwt.dev.Compiler.run(Compiler.java:167)
在com.google.gwt.dev.Compiler.run(Compiler.java:132)
在com.google.gwt.dev.Compiler $ 1.run(Compiler.java:99)
at com.google.gwt.de v.CompileTaskRunner.doRun(CompileTaskRunner.java:55)
,位于com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:50)
,位于com.google.gwt.dev.Compiler。 main(Compiler.java:106)
关闭PersistentUnitCache线程

从哪里开始寻找解决方案

请在删除所有生成的存根并重新编译项目后再试一次。

>

我已经突出显示了需要删除的所有存根,如下面的快照所示。



这里是文件夹列表您的GWT项目编译模块名称)需要被删除。




  • gwt-unitCache

  • 测试类

  • war> gwtproject

  • war> WEB-INF> classes

  • INF> deploy


When compiling the project, I get this obscure Exception

Looking for precompiled archives.  To disable, use -Dgwt.usearchives=false
Loading archived module: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/user/User.gwtar
[WARN] Unable to read: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/user/User.gwtar. Skipping: java.io.InvalidClassException: com.google.gwt.dev.util.DiskCacheToken; local class incompatible: stream classdesc serialVersionUID = 3824090149180578568, local class serialVersionUID = -2622986784335128516
Loading archived module: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/core/Core.gwtar
[WARN] Unable to read: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/core/Core.gwtar. Skipping: java.io.InvalidClassException: com.google.gwt.dev.util.DiskCacheToken; local class incompatible: stream classdesc serialVersionUID = 3824090149180578568, local class serialVersionUID = -2622986784335128516
Loading archived module: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/regexp/RegExp.gwtar
[WARN] Unable to read: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/regexp/RegExp.gwtar. Skipping: java.io.InvalidClassException: com.google.gwt.dev.util.DiskCacheToken; local class incompatible: stream classdesc serialVersionUID = 3824090149180578568, local class serialVersionUID = -2622986784335128516
Loading archived module: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/web/bindery/event/Event.gwtar
Loading archived module: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/xml/XML.gwtar
[WARN] Unable to read: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/xml/XML.gwtar. Skipping: java.io.InvalidClassException: com.google.gwt.dev.util.DiskCacheToken; local class incompatible: stream classdesc serialVersionUID = 3824090149180578568, local class serialVersionUID = -2622986784335128516
Loading archived module: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/json/JSON.gwtar
[WARN] Unable to read: jar:file:<base>/.m2/repository/com/google/gwt/gwt-user/2.5.0/gwt-user-2.5.0.jar!/com/google/gwt/json/JSON.gwtar. Skipping: java.io.InvalidClassException: com.google.gwt.dev.util.DiskCacheToken; local class incompatible: stream classdesc serialVersionUID = 3824090149180578568, local class serialVersionUID = -2622986784335128516
Found 0 cached/archived units.  Used 0 / 4578 units from cache.
Compiling...
  0% complete (ETR: 93 seconds)
  10% complete (ETR: 56 seconds)
  20% complete (ETR: 37 seconds)
  30% complete (ETR: 25 seconds)
  40% complete (ETR: 18 seconds)
  50% complete (ETR: 14 seconds)
  60% complete (ETR: 10 seconds)
  70% complete (ETR: 7 seconds)
  80% complete (ETR: 5 seconds)
  90% complete (ETR: 2 seconds)
  100% complete (ETR: 0 seconds)
  Compilation completed in 28.40 seconds
[ERROR] Unexpected internal compiler error
java.lang.IncompatibleClassChangeError: class com.google.gwt.dev.javac.BytecodeSignatureMaker$CompileDependencyVisitor has interface com.google.gwt.dev.asm.ClassVisitor as super class
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at com.google.gwt.dev.javac.BytecodeSignatureMaker.visitCompileDependenciesInBytecode(BytecodeSignatureMaker.java:217)
at com.google.gwt.dev.javac.BytecodeSignatureMaker.getCompileDependencySignature(BytecodeSignatureMaker.java:199)
at com.google.gwt.dev.javac.CompiledClass.getSignatureHash(CompiledClass.java:152)
at com.google.gwt.dev.javac.Dependencies$Ref.<init>(Dependencies.java:42)
at com.google.gwt.dev.javac.Dependencies$Ref.<init>(Dependencies.java:37)
at com.google.gwt.dev.javac.Dependencies.resolve(Dependencies.java:114)
at com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:311)
at com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:511)
at com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:434)
at com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:420)
at com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:485)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:241)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:223)
at com.google.gwt.dev.Precompile.precompile(Precompile.java:139)
at com.google.gwt.dev.Compiler.run(Compiler.java:167)
at com.google.gwt.dev.Compiler.run(Compiler.java:132)
at com.google.gwt.dev.Compiler$1.run(Compiler.java:99)
at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:55)
at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:50)
at com.google.gwt.dev.Compiler.main(Compiler.java:106)
Shutting down PersistentUnitCache thread

Where could I start looking for the issue?

解决方案

Please try it again after removing all the generated stub and re-compiling the project again.

I have highlighted all the stubs that needs to be deleted as shown in below snapshot.

Here is the list of folders (name can vary based on your GWT project compilation module name) that need to be removed.

  • gwt-unitCache
  • test-classes
  • war > gwtproject
  • war > WEB-INF > classes
  • war > WEB-INF > deploy

这篇关于GWT编译错误 - IncompatibleClassChangeError的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆