我使用Spring boot和gwt 2.6.0创建了Web应用程序。
更改了生成文件的位置:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>${gwt.plugin.version}</version>
<executions>
<execution>
<configuration>
<module>my.module</module>
<webappDirectory>src/main/resources/gwt-public/</webappDirectory>
</configuration>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
如果独立运行我的应用程序,一切正常,因为所有需要的文件都可以访问。
但问题是 - 如何在开发模式下运行GWT(来自Intellij IDEA)。我试图在-noserver模式下运行它,它启动但在浏览器中没有任何东西。
据我所知,我需要指定dev插件使用的war目录,这意味着我需要明确地将包装设置为war?我没有明确的想法。
答案 0 :(得分:0)
你可以编译一个war,运行服务器然后运行gwt debug,但是在浏览器打开之后将url更改为localhost:xxxx,无论spring正在运行,但保留servercode = 127.0.0.1。
或者您可以在编译的maven插件上使用gwt:debug。 在这里看:http://mojo.codehaus.org/gwt-maven-plugin/debug-mojo.html
答案 1 :(得分:0)
我通过将此添加到您的gwt-maven-plugin配置中来实现此目的:
<superDevMode>false</superDevMode>
如果您打算按照Zerkotin的建议更改网址,那么我提供了这个额外的属性:
<noServer>true</noServer>
阻止mvn-gwt-plugin启动嵌入式Jetty实例。但是这不允许我在运行中重新编译。
为了让它在超级开发模式下工作,我在我的gwt-maven-plugin配置中设置了它:
真 真
然后我正常启动Spring Boot(使用java -jar myweb.jar)。然后我启动了maven gwt插件(mvn gwt-debug),将IntelliJ附加到调试器(使用远程),转到代码服务器URL(不是我的应用程序URL),设置那些书籍标记,然后转到我的应用程序URL,当我想重新编译时,我只是点击那些书签。