我可以将 GWT 2.7 编译减少为单一排列吗

app*_*tup 5 gwt gwt-2.7

步骤 1.使用 GWT 2.7.0 通过 Google Plugin for Eclipse 创建一个新的 GWT 项目

步骤 2.修改 .gwt.xml 以将链接器设置为 xsiframe

 <add-linker name="xsiframe" />
Run Code Online (Sandbox Code Playgroud)

步骤 3.编译项目compilation-mappings.txt 显示 6 个条目 - 5 个带浏览器,1 个不带浏览器

1737AD1FC03D9513CE7A9D806F3E21C3.cache.js
user.agent gecko1_8

263432CEAA7C118D6FF27B488528C7EF.cache.js
user.agent safari

3269EBD405702A848A8B082982A76805.cache.js
user.agent ie8

6ED13A4E7283CDD9B28BFDD052C8EC05.cache.js
user.agent ie9

EFB063823A3113BEB2C481F22CA51E1D.cache.js
user.agent ie10

Devmode:devmode.js
Run Code Online (Sandbox Code Playgroud)

步骤 4.修改 .gwt.xml 以设置单一浏览器,并将 user.agent 设置为gecko1_8

<set-property name="user.agent" value="gecko1_8,ie9,ie10,safari" />
<set-property-fallback name="user.agent" value="gecko1_8" />
<set-property name="user.agent" value="gecko1_8" />

<!-- allow Super Dev Mode -->
<add-linker name="xsiframe" />
Run Code Online (Sandbox Code Playgroud)

步骤5.编译项目compilation-mappings.txt在没有浏览器的情况下显示两个条目

FE1687414F0A6033B32B0F59A213285B.cache.js

Devmode:devmode.js
Run Code Online (Sandbox Code Playgroud)

另外,编译日志显示

Compiling module com.appbootup.explore.gwt.HelloWorld
   Compiling 1 permutation
      Compiling permutation 0...
   Compile of permutations succeeded
Linking into D:\workspace\GWork\HelloWorld\war\helloworld
   Link succeeded
   Compilation succeeded -- 6.434s
Run Code Online (Sandbox Code Playgroud)

问题 1. 第二个排列“devmode.js”是否会消耗我们的构建性能时间?

问题 2: 有没有办法通过消除“devmode.js”将其进一步降低到 1 排列。?

Col*_*rth 1

问题 1. 第二个排列“devmode.js”是否会消耗我们的构建性能时间?

不需要,该文件是根据模板构建的,无需任何费用。

问题 2:有没有办法通过消除“devmode.js”将其进一步降低到 1 排列。?

由于问题 1 的答案是“否”,因此我不确定这是否相关。复制单个文件需要多长时间?如果花费的时间超过几毫秒,我会感到非常惊讶。


为了加快编译速度,请使用超级开发模式 - 我敢打赌 6.4 秒会下降到不到一秒。当然,它对于生产构建没有好处,但它允许您简单地刷新浏览器,并将根据您节点的更改非常非常快地生成新的排列。

为了更快地进行生产编译,请使用草稿模式,并确保继承的模块数量不超过绝对必要的数量 - 未使用的代码越多,构建可能花费的时间就越长。