带有GWT的Intellij IDEA 12:工作目录不等于您的Web应用程序根目录

时间:2013-08-12 06:58:05

标签: java gwt web-applications intellij-idea

我创建两个GWT项目,一个使用maven而另一个没有,在这两种情况下,它会在启动我的GWT应用程序时给出低于警告:

Warning: Your working directory, (C:\Users\XXX\.IntelliJIdea12\system\gwt\XXXX.xxxx\run\www) is not equal to your 
web application root (C:\Users\XXX\ws\myprj\myprj\target\myprj-0.0.1-SNAPSHOT)
You will not be able to access files from your working directory on the production server.

我在运行/调试配置中的开发模式参数中指定-war参数,但似乎没有效果。它在启动命令行中有两个-war选项!

然而,发布似乎没问题,我很好奇为什么会出现此警告以及如何修复。

非常感谢。

1 个答案:

答案 0 :(得分:0)

我认为删除此警告的最简单方法是在Idea的运行/调试配置开发模式参数中使用 -war 参数你的buid配置。

说明:

理念诚实地告诉你真相。它运行服务器,工作目录定义为your_home_folder / .IntelliJIdea12 / system / gwt / XXXX.xxxx / run / www

因此,如果在运行/调试配置中已定义在启动之前:生成,它将构建项目并复制此目录所需的所有内容。

但是您为开发模式参数定义了-war,它不会改变构思将项目构建到自己的目录的事实,因为您的参数将仅在运行时使用。因此,Idea会及时发现并警告您,但Idea并不知道您实际上是在从构建结果中引用正确的目录,它应该是相同的。所以这就是为什么它尽管Idea的警告仍然有效。

我不知道您为什么必须使用目标中的目录,因此如果此要求不严格,您可以从开发模式参数中删除此 -war 参数它仍然有效,因为Idea制作并部署了您拥有工作目录所需的一切。