0

出于我必须要求您接受的原因,我需要构建我的 GWT 应用程序,以便所有输出都可以在“/Foo/bar/1.0”而不是正常的“/”中获得。

具体来说,我需要在 IntelliJ 中编译我的 GWT 应用程序的结果如下所示:

~/.IntelliJIdea12/system/gwt/Project.534b2263/Test.ef6cd448/run/www/
  - Foo
    - bar
      - 1.0
         - Testing.html
         - Testing.css
         - (other files in here too, like favicon.ico, etc...)
         - WEB-INF
           - (contents left out here)
         - testing
           - testing.devmode.js
           - testing.nocache.js

我似乎能做的最好的事情就是将 Testing.html、Testing.css 等放在正确的位置。我通过将我的 GWT 模块的“输出相对路径”设置为“/Foo/bar/1.0/”并将我的 Web 资源目录的“相对于 DeploymentRoot 的路径”设置为相同的“/Foo/bar/1.0/”来得到这个.

但是,包含 testing.devmode.js 和 testing.nocache.js 的“测试”目录似乎在 ~/.IntelliJIdea12/system/gwt/Project/534b2263/Test.ef6cd448/run/www/testing 目录中结束. 显然,这意味着当 Testing.html 尝试包含 testing/testing.nocache.js 时,找不到它,并且我的 GWT 应用程序无法运行。

希望我只是错过了一些简单的东西,但我已经挖了好几个小时了......

对于那些可能感兴趣的人,我创建了一个示例项目来说明问题,并将它与同样的基本问题一起发布在 IntelliJ 论坛上: http: //devnet.jetbrains.com/thread/442050

4

2 回答 2

0

(从 IntelliJ 论坛复制)如果您需要将 GWT 编译器输出放在某个地方,您需要创建一个工件(文件 | 项目结构 | 工件)并向其中添加“GWT 编译器输出”元素。您也可以将“Web facet resources”元素放到同一个工件中。如果您需要将 GWT 输出放置到工件输出根目录下的子文件夹中,请使用工件编辑器中“输出布局”树中的“新建文件夹”操作。

于 2013-02-25T07:42:53.857 回答
0

只是为了将来参考和容易找到这个答案,最终结果(参见http://devnet.jetbrains.com/thread/442050)无法控制 GWT 编译器的输出位置。

实际上这意味着(无论如何对于我的项目)是我必须进行运行时检查: GWT.isProdMode() 然后从不同位置加载资源。

于 2013-03-12T15:05:12.843 回答