当在编译模式下运行时,我得到这个可怕的GWT模块'mymodule'可能需要(重新)编译对话框消息.
我编译了一个列表,列出了其他人建议在编译模式下运行GWT时给出的错误消息.我打开了maven创建的WAR文件,所有文件都在正确的位置.我在另一个没有出现此错误的GWT maven项目中确认了这一点.但是,以下建议都没有纠正这个问题.我也没有能够确定这两个项目之间缺少什么区别 - 工作的那个和我的不会在编译模式下运行的项目.
我还能尝试什么?
Tho*_*yer 53
你是否使用你src/main/webapp的"war文件夹" 启动了DevMode ?换句话说,*.nocache.js你的中有src/main/webapp吗?在这种情况下,该文件将覆盖由gwt-maven-plugin调用的GWT编译器生成的文件.
在*.nocache.js通过在DEVMODE(当没有人存在时,由先前GWT编译生成)包含只对必要的位来启动在DEVMODE生成,否则将失败,并在上面提到的错误.
Ada*_*ies 16
查找一个名为文件<MODULE_NAME>.nocache.js中src/main/webapp/<MODULE_NAME>并删除/重命名.
然后做你的mvn包,所有'应该'没事.
在Eclipse中运行Dev模式时可能会发生此问题.Eclipse将生成nocache.js文件并将其放在src/main/webapp目录下.
然后当你运行时mvn pacakge,maven插件创建部署nocache.js并将其放在正确的位置,但是当它将文件打包到战争中时,它会过度nocache.js使用Eclipse创建的部署进行部署- 无聊!
如果在应用程序中有另一个页面的静态链接(即myModule2.html),我在DevMode中发现了同样的问题.因为它缺少?gwt.codesvr = 127.0.0.1:9997字符串,所以它被解释为静态(已编译的)GWT应用程序,它不是,抛出你提到的错误代码.

当然解决方案不是使用硬编码的文字链接,而是让GWT为您制作.希望能帮助别人.
更新:
这是在标准GWT*.nocache.js文件中抛出此错误的代码.
function B() {
var b = false;
try {
var c = Window.location.search;
return (c.indexOf("gwt.hosted=") != -1
|| (c.indexOf("gwt.codesvr=") != -1
|| Window.external && Window.external.gwtOnLoad))
&& c.indexOf("gwt.hybrid") == -1
} catch (a) {}
B = function () {
return b
};
return b
}
// and later, if B() returns false, show recompile error
if (!B()) {
try {
alert(Pb);
return;
}
...
}
Run Code Online (Sandbox Code Playgroud)
这样,就防止了编译器的消息
因此,在弹出窗口的情况下,一些服务器代码重定向DevMode会话URL,但不添加"codesvr ="参数,因此显示警告.
| 归档时间: |
|
| 查看次数: |
31632 次 |
| 最近记录: |