我有一个在2.6.1中构建的项目,并且无法在2.7.0中构建。我已经在互联网上找到了一个很好的答案,但我找不到。
以下是Maven构建的输出:
......无趣的东西被移除
[INFO] Compiling module XXXX
[INFO] Looking for precompiled archives. To disable, use -Dgwt.usearchives=false
[INFO] Loading archived module: jar:file:/C:/Users/3433/.m2/repository/com/google/gwt/gwt-user/2.7.0/gwt-user-2.7.0.jar!/com/google/gwt/core/Core.gwtar
...
[INFO] Compiling...
[INFO] Compilation completed in 5,95 seconds
[INFO] Invalid Unit: com.google.gwt.validation.client.impl.BaseGwtConfiguration
[INFO] Invalid Unit: com.google.gwt.validation.client.spi.GwtValidationProvider
...删除了其他无效单位
[INFO] Invalid Unit: com.google.gwt.validation.client.spi.BaseConfigurationState
[INFO] Invalid Unit: java.lang.String
[INFO] Invalid units found: 11
[INFO] Compiling...
[INFO] Compilation completed in 0,04 seconds
[INFO] Added 3762 units to cache since last cleanup.
[INFO] Tracing compile failure path for type 'java.lang.String'
[INFO] Errors in 'jar:file:/C:/Users/3433/.m2/repository/com/google/gwt/gwt-user/2.7.0/gwt-user-2.7.0.jar!/com/google/gwt/emul/java/lang/String.java'
[INFO] Line 976: The method getDefault() is undefined for the type Locale
[INFO] Removing invalidated units
[INFO] Wrote 3762 units to persistent cache.
[INFO] Resolving java.util.Locale
[INFO] Found type 'java.util.Locale'
[INFO] [WARN] Unable to resolve supertype java/lang/Object
删除了许多错误......
[INFO] Resolving com.google.gwt.core.client.AsyncProvider
[INFO] Found type 'com.google.gwt.core.client.AsyncProvider'
[INFO] [ERROR] Unable to find class java/lang/Object
[INFO] Resolving method get
[INFO] Found type 'com.google.gwt.core.client.Callback'
[INFO] [ERROR] Unable to find class java/lang/Object
删除了数百个类似的错误
[INFO] Tracing compile failure path for type 'java.lang.Object'
[INFO] [ERROR] Errors in 'file:/usr/local/google/home/dankurka/gwt/user/super/com/google/gwt/emul/java/lang/Object.java'
[INFO] [ERROR] java.lang.String cannot be resolved to a type
Dan Kurka在我的构建中的主要道路是什么?
有什么想法吗?
答案 0 :(得分:2)
我知道这是一个老帖子,但我最近遇到了同样的问题,所以我想我会发布我的发现。
就我而言,我正在从GWT 2.5.1升级到2.7.0。我们的代码中有一个java.util.Locale类,因此GWT编译器具有仿真所需的所有源代码,并且它与GWT 2.7.0中相同类的结构不匹配。我不得不添加缺少的方法,之后就好了。
要查找原因,我必须使用-Dgwt.logLevel = DEBUG参数重新编译。没有这个设置,我的问题的根本原因被隐藏了。当我使用日志级别集编译时,我能够看到问题所在:
[INFO] Compiling...
[INFO] 30% complete (ETR: 9 seconds)
[INFO] 30% complete (ETR: 9 seconds)
[INFO] 30% complete (ETR: 9 seconds)
[INFO] 30% complete (ETR: 9 seconds)
[INFO] 40% complete (ETR: 8 seconds)
[INFO] 50% complete (ETR: 6 seconds)
[INFO] 60% complete (ETR: 4 seconds)
[INFO] 70% complete (ETR: 3 seconds)
[INFO] 80% complete (ETR: 2 seconds)
[INFO] 90% complete (ETR: 1 seconds)
[INFO] 100% complete (ETR: 0 seconds)
[INFO] Compilation completed in 11.10 seconds
[INFO] java.util.Locale isn't structurally same.
[INFO] Invalid Unit: java.lang.String
[INFO] Invalid units found: 1
[INFO] Compiling...
[INFO] Compilation completed in 0.02 seconds
[INFO] Added 5097 units to cache since last cleanup.
[INFO] Tracing compile failure path for type 'java.lang.String'
[INFO] Errors in 'jar:file:/Users/randymay/.m2/repository/com/google/gwt/gwt-user/2.7.0/gwt-user-2.7.0.jar!/com/google/gwt/emul/java/lang/String.java'
[INFO] Line 991: The method getDefault() is undefined for the type Locale
[INFO] Line 976: The method getDefault() is undefined for the type Locale
[INFO] Checked 1 dependencies for errors.