0

我一直无法让 Super-Dev-Mode 与 GWT 2.7 一起使用。和 GXT 3.1.x 经典的 Dev-Mode 启动没有问题,但 Super-Dev-Mode 和 GWT-compile 项目将无法正常工作。

我目前正在 Windows 上使用带有 Java 1.7_2 的 Eclipse 4.4.2。因此,假设我们有 2 个 GWT/GXT 项目(无 Maven),使用 GWT 2.6 和 GXT 3.1.x(项目备份在存储库中)。

一个称为 A,另一个项目称为 B。项目 A 有许多包,没有入口点(仅作为库/框架工作),只是每个其他项目都必须扩展的抽象入口点。另一个叫做 B 并且继承自 A,入口点扩展了 A 的入口点。

在经典开发模式下在 GWT 2.6 下启动项目时,项目运行良好。升级到 GWT 2.7 时。它可以在经典的开发模式下正常工作,即使在超级开发模式下,代码服务器也开始运行,但是在编译模块时我收到一个错误,一些代码似乎不在包“客户端”下,所以我迁移了将其放入自己的包中,并将源路径添加到 A.gwt.xml。

修复此错误并再次启动 Super-Dev-Mode 后(以及尝试 GWT 编译时)我收到如下错误:

 Ignored 15 units with compilation errors in first pass.
Compile with -strict or with -logLevel set to TRACE or DEBUG to see all errors.
   Finding entry point classes
      Tracing compile failure path for type 'com.example.b.client.B'
         [ERROR] Errors in 'file:/C:/Workspace/ProjectB/src/com/example/b/client/B.java'
            [ERROR] com.example.a.client.A cannot be resolved to a type
         [ERROR] Errors in 'file:/C:/Workspace/ProjectA/src/com/example/a/view/ExampleLayout.java'
            [ERROR] com.example.a.view.ILayout cannot be resolved to a type
         [ERROR] Errors in 'file:/C:/Workspace/ProjectA/src/com/example/a/client/service/ExampleServiceAsync.java'
            [ERROR] com.example.a.model.Examplemodel cannot be resolved to a type
         [ERROR] Errors in 'file:/C:/Workspace/ProjectA/src/com/example/a/model/OtherExampleModel.java'
            [ERROR] com.example.a.hibernate.model.ComOtherExampleModel cannot be resolved to a type
         [ERROR] Errors in 'file:/C:/Workspace/ProjectB/src/com/example/b/client/service/OtherExampleServiceAsync.java'
            [ERROR] com.example.a.model.NewExampleModel cannot be resolved to a type
         ...
     (and many more)

项目 A 包含在项目 B 的构建路径中,当创建自定义运行配置时,将项目添加到“用户条目”并将源文件夹添加到“用户”条目将不起作用。对于自定义运行配置,我使用了以下参数:

"-src src/ -src ${workspace_loc:ProjectA} com.example.b.B"

乃至:

"-src src/ -src ${workspace_loc:ProjectA} com.example.b.B com.example.a.A"

我广泛搜索解决方案,甚至尝试再次设置工作区,再次从存储库中签出项目,组织导入,甚至将每个包添加到 A 的构建路径中。

我还尝试将其添加到 .gwt.xml 文件中不起作用:

<add-linker name="xsiframe"/>

如何解决“无法解析为类型”错误?我非常感谢为解决这个问题提供的各种形式的帮助!谢谢!

4

1 回答 1

1

一个可能的问题可能是您的 GXT 版本。如果您使用的是 GXT 3.1.1(这是最新的 GPL 版本),那么您不能使用 GWT 2.7.0。

看一下版本表:

GXT 版本

如您所见,Sencha GXT 3.1.1 不支持 GWT 2.7.0。第一个支持 GWT 2.7.0 的 GXT 版本是 GXT 3.1.2。

于 2016-01-20T10:50:30.943 回答