这可能只是 IDE 的细节。但是使用 Eclipse,我对组织我的类和资源更感兴趣。
据我了解,默认的“src”目录是我所有资源的存放地。 如果我的资源驻留在其中,我可以像这样引用它们:
ImageIcon icon = new ImageIcon("src/icon-16x16.png");
如果我只为图标创建一个目录(在 src/目录中),那么我只需更改路径即可:
ImageIcon icon = new ImageIcon("src/icons/icon-16x16.png");
所以,现在我想在 src/目录之外为我的资源创建一个单独的目录。
这是我的旧结构:
prj.HelloWorld (project)
-> src/ .........
-> src/images/ ........
-> src/ (default package) ......classes.java
这是我清理过的内容:
prj.HelloWorld (project)
-> classes/ .........
-> images/ ........
-> media / ........
现在,我对使用专用项目 (prj.Resources) 很感兴趣,只是为了我可以在所有项目中共享的公共(public)资源。
prj.Resources (project)
-> global_classes/ .........
-> global_images/ ........
-> global_media / ........
prj.HelloWorld (project)
-> classes/ .........
-> images/ ........
-> media / ........
然后修改 prj.HelloWorld,将 prj.Resources 添加到 Java Build Path 中的 Projects 选项卡。
(prj.HelloWorld > 属性 > Java 构建路径 > 项目选项卡 > 添加...)
到目前为止,我已经这样做了,prj.Resources/global_classes/ 中的任何类都被成功检测到。
但 global_images 中的图像不是。
ImageIcon icon0 = new ImageIcon("global_images/icon.png");
我知道我们可以使用位于不同项目中的资源,但我在这里遗漏了一些明显的东西。
最佳答案
您无法访问 global_images 文件夹,因为它不在 HelloWorld 项目的根文件夹中。
但是您可以给出相对路径作为显示该项目资源文件夹。
ImageIcon icon0 = new ImageIcon("../Resources/global_images/icon.png");
关于java - Eclipse - 引用 Java 资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13942813/