【发布时间】:2015-12-29 18:05:55
【问题描述】:
我不记得我在哪里弄红了,因为 gwt 2.7.0 sdk maven 模块必须包含 3 个子模块:server、shared 和 client。
但在 github 上我看到了 2.7 的不同项目
谁能回答我这个问题?
【问题讨论】:
-
不,您不必创建多个模块。如果您想让代码更加模块化,这会很有帮助。我可以从经验告诉你,在开发应用程序时,它使开发变得更加繁琐。这是由于在共享模块中进行了更改,而客户端代码没有看到更改。我建议从一个项目开始,并将您的服务器/共享代码放在同一个项目中,直到将代码移动到它自己的模块中才有意义。
-
我认为客户端代码无法编译到与服务器代码相同的目录。我肯定要求版本 2.7.0。所以你确定你的答案吗?
-
这是正确的,但您不必将代码放在多个模块中。您不能在客户端包中包含非白名单类。 GWT 使用 .client 和 .server 的约定将服务器端代码与客户端代码分开。这仅适用于 gwt 编译器,因为它只会编译 .client.* 包中的代码,而不会留下 .server 包。 gwt 编译器可以使用 .server 包中的代码,只要它类似于简单的 DTO。它将无法编译执行例如文件 io 的类。