gpt4 book ai didi

java - 为什么同一目录中的一个java类无法找到资源,而其他类却可以?

转载 作者:行者123 更新时间:2023-12-01 20:26:57 27 4
gpt4 key购买 nike

我有一个这样的项目结构:

main-directory
src
code
images
javaFile1.java
test.java

编译后的项目结构是这样的:

out
artifacts
production
main-directory
code
images
javaFile1
test

images 是包含许多图像的目录。

现在测试代码如下所示:

    public void doSome(){
System.out.println(this.getClass().getResource("./images/image1.png"));
}
public static void main(String[] args){
test test = new test();
test.doSome();
}

I get the file as file:

--location-- /main-directory/out/production/main-directory/code/images/image1.png

但是当我在 javaFile1 中运行 this.getClass().getResource("./images/image1.png") 时,它返回 null。我无法理解为什么 javaFile1 找不到资源,而 test 却找到资源,即使它们位于同一目录中。我尝试了 SO 的一些答案,但没有一个起作用。

如果有任何帮助,我将不胜感激。

最佳答案

出于某种原因,当我添加“/code/images/image1.png”而不是“./images/image1.png”时,它修复了。可能资源需要父目录才能找到它。

关于java - 为什么同一目录中的一个java类无法找到资源,而其他类却可以?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58912358/

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