Vaadin - GWT错误“模块xxx可能需要重新编译

时间:2010-06-04 15:47:01

标签: gwt vaadin

我正在加速Vaadin,每当我尝试运行演示应用程序时,我都会收到此javascript警报。

GWT module 'com.vaadin.terminal.gwt.DefaultWidgetSet' may need to be recompiled

我试过清理这个项目无济于事。

正如我所说,我正在加速,所以我确信我会缺少一些简单的步骤或者我没有掌握的概念。

6 个答案:

答案 0 :(得分:11)

我对Vaadin一无所知,但是有一个更普遍的背景,其中发生了这个错误:

只要您在Eclipse中进行测试,您的应用程序的动态编码仍然是在JVM中运行的真正的Java编码。此编码通过可通过套接字访问的调试器提供。你得到一个如下所示的URL:

http://127.0.0.1:8888/MyApp.html?gwt.codesvr=127.0.0.1:9997

这个codesvr是您的Java代码的eclipse托管调试程序。

在您的应用程序可以独立运行之前,GWT必须将您的Java代码转换为JavaScript;为每种浏览器类型(Firefox,WebKit,Opera,...)和您想要支持的语言生成单独版本的代码。只有在完成此操作后,您才能通过

以常规方式访问您的应用

http://127.0.0.1:8888/MyApp.html

经过几周在Eclipse中运行我的应用程序后,我忘记了编译浏览器的步骤,并对这条消息感到疑惑。如果您没有使用Ant任务,则启动编译器的方法是在项目的上下文菜单中点击Google|GWT Compile。完成后,您的应用程序中的JS将得到充实,您的应用程序可以在客户端无需Java运行。

当然消息消失了。

答案 1 :(得分:1)

警告不是错误。该应用程序是否有效?否则,您必须重新编译Vaadin小部件集。这些也可能有所帮助:http://vaadin.com/directory/help/using-vaadin-add-ons

答案 2 :(得分:1)

这条消息经常出现:

答案 3 :(得分:0)

Carl Smotricz是绝对正确的。

在最顶层的菜单上清理和构建项目不起作用。

在部署之前,右键单击GWT项目时生成的上下文菜单中必须使用“Google | GWT Compile”。 如果他或她试图在Eclipse外部的WAS上部署基于GWT的webapp,则错误可能不是在主机网页末尾不添加“?gwt.codesvr = 127.0.0.1:9997”。

答案 4 :(得分:0)

您可能需要清除浏览器缓存。浏览器使用的已编译js可能不是最近编译过的js。

在Chrome中,您可以查看是否在开发人员工具窗口中使用了缓存的js(ctrl + shift + i)。在size列中,它将表示(来自缓存)而不是实际大小。然后,您可以右键单击并清除浏览器缓存。 ctrl + r重新加载,错误应该消失。

答案 5 :(得分:0)

服务器重启为我完成了这项工作。 我曾尝试清除缓存,清理和重建..但我仍然得到相同的警告信息。 服务器重启使它重新加载了最新编译战争的所有结果。 这是一个打击和审判,我很高兴它工作:) :)