Intellij/GWT 在没有排列的情况下启动 gwt 应用程序

Intellij/GWT Starting a gwt application without permutations

我想使用外部码头和 gwt 编译服务器(使用 -noserver)在开发模式下启动我的 gwt 应用程序。

使用 3 个排列 (user.agent=safari) 启动网络服务器 (jetty + gwt war) 需要 250 秒,选项为:

并在文件中 MyProject.gwt.xml

<set-property name="user.agent" value="safari" />

然后我启动dev模式,gwt编译服务器在我要刷新客户端的时候再做2个排列。

是否可以在启动码头时避免排列?

我知道 -Dgwt.compiler.skip=true 避免排列但它不会生成 gwt 编译服务器所需的最小 js,MyProject 目录包含 MyProject.nocache.js 或 MyProject.devmode.js 等文件缺少,所以我无法在我的浏览器上要求编译服务器完成他的工作。

如果我使用选项 -Dgwt.compiler.skip=true,我的网络服务器会在 30 秒后启动,但我卡住了。

我不知道为什么 gwt 需要在启动网络服务器时进行排列,这不是 gwt 编译服务器在开发模式下的工作吗?

编辑:我想我和这个人在 2014 年有同样的问题 https://groups.google.com/g/google-web-toolkit/c/p9BGyLxiLkE

除了我使用的是 gwt 2.9

您可以通过折叠 gwt.xml 中的所有属性来避免多重排列 这会将所有排列合并为一个

<collapse-all-properties/>

听起来您的项目设置不正确。您使用的是什么版本的 GWT。这个开发模式是“超级开发模式”还是旧的开发模式?

Is it possible to avoid permutations while launching the jetty ?

Web 服务器(码头)启动时不应生成排列。只有当您在浏览器中打开页面时,代码服务器 运行 GWT 编译器才能编译模块,然后根据您的浏览器类型绑定到 one 用户代理,并且然后编译 1 个排列。

我终于找到了解决问题的方法,

问题是 -war 属性 没有指向好的目录

PATH_TO_MY_DEV_DIRECTORY/MY_GWT_MODULE/target/v2

而不是

PATH_TO_MY_DEV_DIRECTORY/MY_PROJECT/MY_GWT_MODULE/target/v2

所以现在,在 Intellij 中我有 3 个配置:

  • 编译服务器(GWT 配置),开发模式参数为:-noserver -war "PATH_TO_MY_DEV_DIRECTORY/MY_PROJECT/MY_GWT_MODULE/target/v2"/

  • 一个构建我的 war 的 maven,运行 为:clean install -Dgwt.compiler.skip=true

  • 使用我的 maven 配置的带有启动前参数的码头配置

现在工作正常