如何创建开发/调试和生产设置
我最近无意中部署了我们的游戏typrX的调试版本(在www.typrx.com上打字比赛 – 尝试它很有趣)。 它很快得到纠正,但我知道它可能会再次发生。 在挖掘Google之后,我发现了一些信息,如何创建2个不同的配置文件,一个用于具有调试function的开发模式,另一个用于部署。 这是我从Google IO演示文稿中找到的内容。 有人有这个设置吗? 有人可以解释如何运行吗?
MyAppCommon.gwt.xml ... ... MyAppDebug.gwt.xml ...
使用特定模块进行调试的想法已经浮出一段时间,并且在此Google I / O演示文稿中也有提及(参见PDF中的幻灯片33或video中的0h31m)。
基本思想是你有一个标准的 GWT模块,第二个调试模块inheritance这个标准模块,配置一些属性,并使用GWT的延迟绑定在调试时用特定的实例替换一些类。
然后,您只需配置Maven / ant构建版本即可编译相应的模块,具体取决于您处于开发模式还是处于发布模式。
在我的项目中,我没有创建“app.config”延迟绑定属性,但我可能稍后会这样做。 我做的是以下内容:
创建了一个标准模块
COM /示例/ MainModule.gwt.xml:
创建了一个“调试”模块,它inheritance了标准模块并为开发配置了一些额外的属性
COM /示例/ MainModuleDebug.gwt.xml:
注意: rename-to属性在这里非常重要,因为您希望在完全相同的名称下部署这两个模块。 在开发期间编译时,您不希望必须更改所有html主机页面以指向调试模块。
配置Maven和gwt-maven-plugin来编译正确的模块
(...) (...) true (...) org.codehaus.mojo gwt-maven-plugin (...) com.example.MainModule${gwt.module.suffix} (...) gwtDebug Debug false gwtDebug
只需执行“maven clean install”即可编译生产模块。 在开发中,您使用“mvn clean install -DgwtDebug”来激活gwtDebug配置文件,该配置文件又编译调试模块。
当然,您可以配置〜/ .m2 / settings.xml以始终定义“gwtDebug”属性…
同样的想法也适用于Ant。 但我并不精通它。
当您开始玩具有使用调试模块覆盖真实模块的想法时,您开始设想一些非常酷的可能性:
- 您可以添加性能日志,这些日志将在生产时从代码中删除。
- 您可以配置所有toString()方法以在调试模式下返回有用的内容,并在生产时返回空字符串(从而减少.js大小)。
- 您可以通过仅指定一个区域设置/一个浏览器/一个日志级别来减少排列数量,以加快编译速度(但不要忘记不时测试其他区域设置/浏览器)。