为什么我们必须通过inherits标签在gwt.xml文件中指定要使用的模块?仅仅导入类还不够吗,而 gwt 编译器只会推断要包含的其他依赖项是什么?
问问题
63 次
2 回答
1
gwt.xml
文件包含许多无法从代码中推断出来的内容:
<source>
告诉哪些类应该在客户端代码中工作;规则可能很复杂,您可以gwt.xml
在同一个包中拥有多个具有不同规则(重叠或不重叠)的文件。实际上,我正在致力于模块化gwt-user
,它需要很多分区(例如,这样您就可以在不导入整个小部件集的情况下使用Timer
or类)Window
<super-source>
告诉 GWT 在哪里可以找到客户端特定的类实现。这用于提供 Java 运行时的仿真,除其他外(是的,如果你认为你有更好的实现,Java 运行时的仿真是(几乎)完全可交换的)<replace-with>
并<generate-with>
配置广泛使用的延迟绑定gwt-user
(在非常低的级别上选择最快的算法,以StringBuilder
根据浏览器或requestAnimationFrame
在支持它的浏览器中使用,解决每个浏览器的浏览器差异等)
而这只是其中的一小部分。
于 2013-06-30T15:30:16.000 回答
0
好问题。最好明确定义要加载的 GWT 模块。例如,如果您有一个包含 .gwt.xml 文件的依赖项,并且您只想将这些类用于服务器端的事情。如果 jar 中的那个 .gwt.xml 文件是自动加载的,那么该文件中指定的任何入口点都会被加载。这可能不是您想要的,并且可能会在加载 gwt 模块时导致不必要的开销。
于 2013-06-28T17:47:13.303 回答