【问题标题】:Running GWT SuperDevMode in IDEA on Win8在 Win8 上的 IDEA 中运行 GWT SuperDevMode
【发布时间】:2013-12-06 07:22:29
【问题描述】:

我正在尝试将我的 GWT 项目配置为在 SuperDevMode 下运行,并在服务器运行时遇到严重问题。

所以,我在 Intellij IDEA 中进行了“常规”devMode 配置。在 app-servers 列表中创建了一个新的 GWT 配置。设置以下值:

[勾选]超级开发模式

虚拟机选项:-Xmx512m -XX:MaxPermSize=384M

开发模式参数:-bindAddress 0.0.0.0 -port 1234 -workDir d:\projects\myApp\SDV\ -src d:\projects\myApp\src\main\java com.app .MyApp

对我的项目的构建 xml 文件进行更改,在文件末尾添加以下行:

    <add-linker name="xsiframe"/>
    <set-configuration-property name="devModeRedirectEnabled" value="true"/>
    <!-- enable source maps -->
    <set-property name="compiler.useSourceMaps" value="true" />

这是此配置运行的控制台输出:

workDir: d:\projects\myApp\SDV
deleting: d:\projects\myApp\SDV\com.app.MyApp\compile-1
binding: user.agent=safari
binding: compiler.useSourceMaps=true
binding: locale=en
Compiling module com.app.MyApp
   Compiling 1 permutation
      Compiling permutation 0...
      Source Maps Enabled
   Compile of permutations succeeded
Linking into d:\projects\myApp\SDV\com.app.MyApp\compile-1\war\myapp; Writing extras to d:\projects\myApp\SDV\com.app.MyApp\compile-1\extras\myapp
   Link succeeded
   Compilation succeeded -- 84.458s
Compile completed in 85210 ms
deleting: d:\projects\myApp\SDV\com.app.MyApp\compile-1
[ERROR] unable to create directory: d:\projects\myApp\SDV\com.app.MyApp\compile-1
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
    at com.google.gwt.dev.codeserver.CompileDir.mkdir(CompileDir.java:103)
    at com.google.gwt.dev.codeserver.CompileDir.create(CompileDir.java:93)
    at com.google.gwt.dev.codeserver.Recompiler.makeCompileDir(Recompiler.java:267)
    at com.google.gwt.dev.codeserver.Recompiler.compile(Recompiler.java:82)
    ....
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)

Process finished with exit code 1

我怀疑可能是Win8文件访问权限问题:无法创建目录,因为它没有成功删除。上面日志中的两行都包含以下文本:

deleting: d:\projects\myApp\SDV\com.app.MyApp\compile-1

在 IDEA 中是红色的(如果有任何特殊含义)。

我取消选中文件资源管理器中工作文件夹属性中的 READ_ONLY 复选框,并以管理员身份运行 idea64.exe。我也应该以某种方式“以管理员身份”运行这个 codeserver 编译器吗?有可能吗?

也可能是配置问题,如果是这样,有人可以从下面的详细信息中看到 - 我非常感谢您的帮助。提前致谢!

更新

使用参数“-noprecompile”运行 superDevMode 配置会得到相同的结果:

workDir: d:\projects\myApp\sdv
deleting: d:\projects\myApp\sdv\com.app.MyApp\compile-1
Module setup completed in 865 ms
deleting: d:\projects\myApp\sdv\com.app.MyApp\compile-1
[ERROR] unable to create directory: d:\projects\myApp\sdv\com.app.MyApp\compile-1
com.google.gwt.core.ext.UnableToCompleteException: (see previous log entries)
    at com.google.gwt.dev.codeserver.CompileDir.mkdir(CompileDir.java:103)
    at com.google.gwt.dev.codeserver.CompileDir.create(CompileDir.java:93)
    at com.google.gwt.dev.codeserver.Recompiler.makeCompileDir(Recompiler.java:267)

所以,看起来肯定是文件访问问题(delete 不起作用?)。 Javadoc to CompileDir.create() 方法说:“Creates a new compileDir directory structure. The directory must not already exist, but its parent should exist.”好像已经存在了。

【问题讨论】:

  • 每次编译都会出现这种情况,还是会在一段时间后发生?您的临时驱动器可能已满。
  • 我连一次都编译不了。所以这对我来说是一个真正的表演。驱动器上有很多空间。
  • 我创建了一个 GWT 问题来跟踪这个问题:code.google.com/p/google-web-toolkit/issues/detail?id=8619
  • 谢谢布赖恩,我会跟进的。

标签: gwt windows-8 intellij-idea gwt-super-dev-mode


【解决方案1】:

我认为你的配置是正确的。我在我的 Mac 上使用相同的参数(带有另一个端口号)并且它按预期工作。

文字的红色:

deleting: d:\projects\myApp\SDV\com.app.MyApp\compile-1

正常,表示没有问题。

我不熟悉 Windows 8,但我认为您不需要以管理员权限运行 idea.exe。我认为,取消选中只读复选框应该可以解决您的问题。

另一种方法应该是使用 Intellij 创建 workDir 目录。

文件->新建->目录

(这就是我所做的)。

【讨论】:

  • > "使用 Intellij 创建你的 workDir 目录。"没有帮助。不过还是谢谢。
【解决方案2】:

好的,现在 GWT 团队在 GWT 2.7.0 中修复了这个问题。 https://code.google.com/p/google-web-toolkit/issues/detail?id=8619

运行良好,即使我可以注意到 IDE 控制台中的消息:

[警告] 无法删除 'C:\Users\me\AppData\Local\Temp\gwt-codeserver-1341369077945982663.tmp\com.bla.MyAPP\compile-1'(已跳过)
[错误] 无法创建目录:C:\Users\me\AppData\Local\Temp\gwt-codeserver-1341369077945982663.tmp\com.bla.MyAPP\compile-1
在 com.bla.MyAPP 中加载 Java 文件。

打印此信息后,IDE 将继续运行应用服务器。

解决问题。

【讨论】:

    【解决方案3】:

    我还发现,如果您要将项目从 GWT 2.6.0 转换为 2.7.0,则应删除 2.6.0 运行配置并使用 GWT 2.7.0 默认设置一个新配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-29
      • 2016-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多