gpt4 book ai didi

java - GWT 中 ClientBundle 的资源放在哪里?

转载 作者:行者123 更新时间:2023-12-04 21:29:06 25 4
gpt4 key购买 nike

我想将我的静态资源保留在类树之外,但将它们放在 src/main/resources 树中。尽管应该使用与 java 类相同的路径找到它们,例如:

打包我的.path.to;

class ResourceBundle extends ClientBundle {
@Source("src/main/resources/my/path/to/ResourceBundle/myIcon.png")
ImageResource myIcon();
}

我是否总是必须编写 @source 路径来引用它们?或者我能否以某种方式告诉 ClientBundle 只在与 java 类相同的目录中查找,但只是在资源中查找?

最佳答案

如果您不使用 @Source 注释您的 ImageResource,则 ImageResourceGenerator,通过 ResourceGeneratorUtil.findResources(),将使用相对于 ClientBundle 包的路径,附加方法名称并使用一组默认扩展来解析 ImageResource 源路径(扩展按顺序拾取:png、jpg , gif, bmp; 查看 ImageResource 是如何通过 @DefaultExtensions 注释的。

因此,如果您将图像放入 ClientBundle 的同一个包中,它们将自动解析,甚至无需使用 @Source 注释。如果您有名称相同但扩展名不同的图像,则根据之前的顺序选择第一个。

我不是 maven 用户,但是 apparently如果您在 src/main/resources 中也保持相同的包结构,您的图像将以完全相同的方式被拾取。虽然从未尝试过。

关于java - GWT 中 ClientBundle 的资源放在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16339944/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com