我创建了两个 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 选项!
但是启动看起来不错,我很好奇为什么会出现此警告以及如何修复。
非常感谢。
最佳答案
我认为消除此警告的最简单方法是不在 Idea 的运行/调试配置的开发模式参数中使用-war参数您的构建配置。
说明:
Idea诚实地告诉你真相。它运行服务器,工作目录定义为 your_home_folder/.IntelliJIdea12/system/gwt/XXXX.xxxx/run/www
因此,如果您在运行/调试配置中定义了启动前:Make,它将构建项目并将所需的所有内容复制到此目录。
但是您为开发模式参数定义 -war 并不会改变 idea 将项目构建到自己的目录的事实,因为您的参数仅在运行时使用。因此,Idea 很晚才检测到这一事实并警告您,但 Idea 不知道您实际上是从构建结果中引用了正确的目录,并且它应该以相同的方式工作。这就是为什么尽管 Idea 发出警告,它仍然有效。
我不知道为什么你必须使用目标中的目录,所以如果这个要求不严格,你可以从你的开发模式参数中删除这个-war参数> 它仍然可以工作,因为 Idea 制作并部署了您拥有工作目录所需的一切。
关于java - Intellij IDEA 12 与 GWT : working directory is not equal to your web application root,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18181142/