GWT - 使用“开发模式”刷新更改与 Maven

发布于 2024-11-30 11:25:59 字数 580 浏览 1 评论 0 原文

如果我将 GWT 的开发模式与 Eclipse 结合使用,我在 IDE 中所做的更改将在刷新后立即反映在浏览器中。但是,使用 maven 插件 构建时,我似乎无法获得相同的结果。这可能吗?

这是我尝试过的:

  1. 运行 gwt:run,进行更改并将其保存在 Eclipse 中,刷新浏览器。
  2. 与上面相同,但单击 GWT 开发模式控制台上的“重新启动服务器”按钮。
  3. 告诉 Eclipse 我的项目是 GWT 项目并配置 Web 应用程序,但它无法列出任何入口点模块供我选择。
  4. 'webAppCreator -templates maven com.xx.WebApp' - 仅创建一个 pom,没有项目(?)。

唯一的选择似乎是:停止控制台、gwt:compile、gwt:run。这个周期每次都需要几分钟。

关于如何实现这一目标,或者是否可能,有什么想法吗?无法做到这一点对于我们采用 GWT 来说确实是一个阻碍,因为我们无法废弃 Maven。

蒂亚,罗伊

If I use GWT's Development Mode with Eclipse, changes that I make in the IDE are immediately reflected in my browser upon refresh. However, I can't seem to get the same result when using the maven plugin to build. Is this possible?

Here's what I've tried:

  1. Running gwt:run, making a change and saving it in Eclipse, refreshing the browser.
  2. Same as above but clicked the 'restart server' button on the GWT Development Mode console.
  3. Telling Eclipse that my project is a GWT project and configuring a Web Application, but it fails to list any Entry Point Modules for me to choose from.
  4. 'webAppCreator -templates maven com.xx.WebApp' - creates just a pom, no project (?).

The only option seems to be: stop the console, gwt:compile, gwt:run. This cycle takes minutes each time..

Any ideas on how to achieve this, or if it's even possible? Not being able to do this is really a show stopper for us adopting GWT, since we can't scrap maven.

TIA, Roy

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

感悟人生的甜 2024-12-07 11:25:59

这个问题的真正答案来自 Thomas Broyer 的评论,但我想详细说明我采取的所有步骤以供将来参考:

使用 Maven:

  • 使用 gwt maven 插件原型
  • 按照 Thomas 的建议,将 xxx.gwt.xml 文件从“资源”树移动到“java”树。
  • 运行“mvn clean install”以确保一切顺利,并生成异步类。
  • 要解决此问题,请添加将此添加到您的 pom.xml 中。 当您更改 Maven 依赖项时,您需要运行 Maven 编译以使它们接受 Eclipse。

使用 Eclipse:

  • 使用“导入现有 Maven”将项目导入 Eclipse项目'
  • 右键单击目标->生成源 -> gwt,然后选择构建路径 ->添加到构建路径。
  • 在项目属性中->谷歌-> Web Toolkit,选中“使用 Google Web Toolkit”。
  • 在同一页面上,添加入口点模块。
  • 在项目属性中->谷歌-> Web 应用程序,确保选中“此项目有一个 WAR 目录”,并且该目录指向“src/main/webapp”
  • 右键单击​​该项目,选择“运行方式”->“Web 应用程序”网络应用程序

准备就绪!

The real answer to this question came from Thomas Broyer's comment, but I wanted to spell out all of the steps that I took for future reference:

With Maven:

  • Create the project using the gwt maven plugin archetype.
  • Move the xxx.gwt.xml file from the 'resources' tree to the 'java' tree, as recommended by Thomas.
  • Run 'mvn clean install' to ensure that all's well, and to generate the async classes.
  • To get around this issue, add this to your pom. When you change your maven dependencies you'll need to run a maven compile to get them to take in Eclipse.

With Eclipse:

  • Import the project into Eclipse using 'Import Existing Maven Project'
  • Right-click on target -> generated-sources -> gwt, and select Build Path -> Add to Build Path.
  • In project properties -> Google -> Web Toolkit, 'Use Google Web Toolkit' is checked.
  • On the same page, add your entry point modules.
  • In project properties -> Google -> Web Application, ensure that 'This project has a WAR directory' is checked, and the dir points to 'src/main/webapp'
  • Right-click on the project, select Run As -> Web Application

Ready to go!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文