【发布时间】:2011-06-21 19:27:17
【问题描述】:
我们有一个 Jar 文件。有3个文件夹:
1-st:META-INF
2-nd:资源
3-rd:类
classes文件夹中的类如何从resources文件夹中获取image?
【问题讨论】:
-
到目前为止您尝试过什么?你至少尝试过简单的谷歌搜索“java资源jar”吗?那里似乎有很多例子......
我们有一个 Jar 文件。有3个文件夹:
1-st:META-INF
2-nd:资源
3-rd:类
classes文件夹中的类如何从resources文件夹中获取image?
【问题讨论】:
这是一个例子:
String path = "resources/something.png";
BufferedImage img = ImageIO.read(getClass().getClassLoader().getResource(path));
要在静态上下文中执行此操作,例如在静态初始化程序块中:
String path = "resources/something.png";
BufferedImage img = ImageIO.read(className.class.getClassLoader().getResource(path));
【讨论】:
您想使用ClassLoader.getResource 或getResourceAsStream,这两者都允许您读取存储在JAR 中的文件。您可以使用YourClass.class.getClassLoader() 访问类加载器。有关详细信息,请参阅此问题:Load a resource contained in a jar
【讨论】: