我正在将项目从gwt 2.6.1迁移到gwt 2.7.0,编译成功但在编译期间显示了stange警告消息
[警告]资源' images / home.png'通过ClassLoader找到。因此,该资源的更改不会反映在每个文件的重新编译中。它应该通过< source />注册或< resource />在.gwt.xml中输入。在GWT的未来版本中,我们将删除此回退,您的应用程序将停止编译
我有一个扩展ClientBundle的接口
public interface HomeResources extends ClientBundle {
@Source("images/home.png")
ImageResource home();
}
和图像文件home.png的路径是src / main / resources / images / home.png
它适用于gwt 2.6.1,但根据此警告消息,它不再使用下一个gwt版本2.8.0进行编译。
我尝试添加这些标签< source />或< resource />在我的Module.gwt.xml文件中,但它似乎没有工作,任何修复此行为的建议?
最后我创建了文件夹src / main / resources /< same_package_ClientBundle> / images并将图像放在此文件夹中,警告消息消失
答案 0 :(得分:1)
在GWT中,您不会在ClientBundle中使用的资源应该位于ClientBundle类附近。 以你的例子:
package com.somepackage.client
public interface HomeResources extends ClientBundle {
@Source("images/home.png")
ImageResource home();
}
您的资源应位于此软件包中:com.somepackage.client.images
答案 1 :(得分:0)
图像文件应位于源路径中,因此如果不是这种情况,请将图像移动到源路径中,例如在名为"资源"在客户端包中。
否则请在gwt.xml文件中尝试:
<resource path="imagefolder" />
答案 2 :(得分:0)
GWT编译器警告说明我们需要做什么。
&#34;它应该通过.gwt.xml注册或输入。&#34;
但它没有说明如何指定图像文件目录的路径位置。目录路径位置是.gwt.xml文件的相对路径。
例如
&lt; resource path =&#34; relative / path / to / images / directory / from / current / location&#34; /&gt;
答案 3 :(得分:0)
检查文件名和资源名称。
文件名资源名称 ssLogo.png | ssLOGO(); =&GT;你有警告 ssLOGO.png | ssLOGO(); =&GT;拼写检查。没有警告。 那就是它。