加载应用程序时出现GWT超级开发模式问题

时间:2017-09-06 10:15:45

标签: maven gwt gwt-super-dev-mode

我已将GWT SDK版本安装为2.8.1。我可以用Jersy在GWT中运行应用程序。但是,当我尝试在GWT开发模式(超级)中运行应用程序时,URL生成类似http://127.0.0.1:9876。当我在浏览器中放置此URL而不加载预期的UI页面时。我正在获取页面,

enter image description here

当我点击开发模式开启按钮时,我收到此页面。 enter image description here

即使我点击模块名称(gwtsample),然后我得到如下页面, enter image description here

我甚至在浏览器级别添加了GWT扩展并尝试了相同的操作。但是,仍然没有运气。

我没有尝试使用eclipse下载的GWT SDK,而是从外部下载了相同版本的GWT SDK并应用于Project Properties> GWT>常规设置。仍然只面对同样的问题。

我观察到的另一件事是,在项目方面,GWT版本显示为1.0,其中我最初使用的是2.8.1版本的SDK。我的项目配置了Maven。

我甚至经历过stackoverflow以及其他网站中提到的多个问题和解决方案,但仍未找到解决方案。

我提到的链接是,

GWT Super Dev Mode

Debugging in GWT Super Dev Mode?

GWT Super Dev mode and in production

其他一些......

2 个答案:

答案 0 :(得分:1)

您必须在Web服务器中编译GWT应用程序和主机。 然后使用浏览器导航到此Web服务器。最后按DevModeOn书签切换到superdevmode。

  1. 将书签(开启/关闭开发模式)拖到书签栏
  2. 将您的gwtsample项目编译成战争
  3. 将战争部署到像tomcat或jetty这样的网络服务器
  4. 使用您的浏览器(强烈推荐Chrome用于GWT调试)并导航到您的安装:例如http://localhost:8080/gwtsample
  5. 现在您只是在浏览器中看到已编译的版本
  6. 接下来点击“开发模式”书签。
  7. 您将在浏览器中看到正在进行编译的消息
  8. 现在你在SuperDevMode
  9. 更改代码中的内容
  10. 在浏览器中点击F5。现在重新编译将会发生,您将看到您的更改
  11. 您可以随时点击“Dev mode off”关闭superdevmode。现在您将看到原始编译的应用程序。

    额外:如果您使用的是Eclipse,我强烈建议您使用branflake插件:https://github.com/gwt-plugins/gwt-eclipse-plugin

    他有一些关于如何使用它的精彩视频:https://www.youtube.com/watch?v=DU7ZQVLR5Zo&list=PLBbgqtDgdc_TqzA-qXrjgTFMC_6DKAQyT

    这样您甚至不需要在某个Web服务器中编译和托管,因为您可以使用嵌入式Jetty Web服务器运行。

答案 1 :(得分:1)

您需要一台HTTP服务器来提供HTML主机页面和webapp(Tomcat,Jetty,Wildfly,Apache + PHP,Rails,选择您需要的任何内容)。

然后,启动GWT的CodeServer,-launcherDir指向您的webapp所在的位置。它将创建一个特定于SuperDevMode的* .nocache.js,可能会覆盖您的生产。

现在,像往常一样从Web服务器加载您的webapp,特定的* .nocache.js将动态编译您的源代码。

如果您可以使用简单的servlet容器,则DevMode(而不是CodeServer)将自动执行上述所有设置:使用-war而不是-launcherDir

您不需要打开CodeServer URL(默认情况下在端口9876上)或使用带有任何最新GWT版本的bookmarklet,从2.7开始。