1

我创建了一个 ClientBundle,如下所示。

public interface DataResources extends ClientBundle {
    DataResources IMPL = (DataResources) GWT.create(DataResources.class);
            @Source("marker.png")
            ImageResource markerimage();

            @Source("settings.png")
            ImageResource settingsimage();

            @Source("back.png")
            ImageResource backimage();
}

我收到一个错误,它找不到资源。我的“战争”目录的顶层中有所有图像。

00:00:04.302  [ERROR] Resource marker.png not found. Is the name specified as Class.getResource() would expect?
4

1 回答 1

4

数据资源是相对于您的类所在的包(文件夹)引用的。您可以尝试移动同一包中的图像以检查是否有效。

我通常会将我的资源接口放在一个包中——比如com.project.resources. 然后图像将在 中com.project.resources.images,并且 Source 注释将采用这种形式 @Source("/images/marker.png")

通过遵循这个包结构,您还可以将资源/图像捆绑在 JAR 中,并可以在其他项目中包含和引用它们。

于 2013-01-18T04:05:07.997 回答