【问题标题】:Launching GWT dev mode in eclipse debugger在 Eclipse 调试器中启动 GWT 开发模式
【发布时间】:2017-01-15 18:18:44
【问题描述】:

这适用于 GWT 2.7.0 和 Google App Engine 1.9.34

我有一个 GWT 应用程序,可以在 Eclipse 内的 ANT 构建脚本中使用超级开发模式启动该应用程序。这是 ANT 任务:

<target name="hosted" depends="javac" description="Run hosted mode">
<java failonerror="true" fork="true" classname="com.google.gwt.dev.DevMode">
  <classpath>
    <pathelement location="${src.dir}"/>
    <path refid="project.class.path"/>
  </classpath>
  <jvmarg value="-Xmx1536M"/>
  <arg value="-startupUrl"/>
  <arg value="eDaptiv.html"/>
  <!-- Additional arguments like -style PRETTY or -logLevel DEBUG -->
  <arg value="${entrypoint.class}"/>
</java>

Dev 模式调试器启动,日志记录被定向到 Eclipse 中的控制台。

当我尝试使用 Run -> Debug using the Google Web App 运行配置运行应用程序时,我收到如下所示的错误。我知道 Google App-engine 不支持 JDBC,但无法理解为什么在使用 ANT 构建脚本启动时它似乎可以工作。我假设我需要以某种方式将 Google Web App 配置为不使用 App 引擎,但似乎找不到禁用它的方法。

=== 2017-01-15 17:09:56,511 [70-0] 错误 ScreenLoaderServlet - screenLoader - com.isomorphic.servlet.ScreenLoaderServlet 顶级异常 java.lang.NoClassDefFoundError: java.lang.management.ManagementFactory 是一个受限类。有关详细信息,请参阅 Google App Engine 开发人员指南。 在 com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime.java:52) 在 com.isomorphic.util.IOUtil._threadSafeTmpFileName(IOUtil.java:321) 在 com.isomorphic.util.IOUtil.threadSafeTmpFileName(IOUtil.java:311) 在 com.isomorphic.sql.SQLDriver.(SQLDriver.java:2281) 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(Class.java:259) 在 com.google.appengine.tools.development.agent.runtime.RuntimeHelper.checkRestricted(RuntimeHelper.java:70) 在 com.google.appengine.tools.development.agent.runtime.Runtime.checkRestricted(Runtime.java:65) 在 com.isomorphic.sql.SQLDataSource.init(SQLDataSource.java:309)

【问题讨论】:

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


    【解决方案1】:

    似乎只是发布问题已将我的想法引向答案.... 在 Eclipse Neon 中,没有用于排除 Google App Engine 的复选框。

    但是,在 Google Web App 下我的应用程序的运行配置中,“(x)=Arguments”选项卡的参数之一是: -server com.google.appengine.tools.development.gwt.AppEngineLauncher

    简单地删除该参数似乎是解决方案,因为它可以删除然后执行调试模式。

    但是,简单地删除 -server 选项并不会持续存在....在调试会话终止后,有些东西会重新出现并重新添加,因此当您尝试再次运行它时,如果出现相同的错误,您将返回相同的错误运行前不要删除它。

    持久化的解决方案是将其更改为: -server com.google.gwt.dev.shell.jetty.JettyLauncher

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多