gpt4 book ai didi

Java 路径 ImageIcon URL .JAR

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:52:10 25 4
gpt4 key购买 nike

我可能已经尝试过了,但没有成功..

文件是:

/Users/Toto/Desktop/Titi/IUT/Java/TP2/project/src/fichierPointJava/img1.png

fichierPointJava 是包名。

当我位于包含 build.xml 的项目中时,我启动了 ant

以下是我测试过的代码:

URL urlImage1=this.getClass().getClassLoader.getResource("/src/fichierPointJava/img1.png");
URL urlImage1=this.getClass().getClassLoader.getResource("/fichierPointJava/img1.png");
URL urlImage1=this.getClass().getClassLoader.getResource("fichierPointJava/img1.png");
URL urlImage1=this.getClass().getClassLoader.getResource("/img1.png");
URL urlImage1=this.getClass().getClassLoader.getResource("img1.png");

System.out.println("Value = "+ urlImage1);

我制定了遗嘱,有或没有 this,有或没有 getClassLoader()

希望有人能帮助我。

谢谢

最佳答案

如果你有如下包布局

+---src
| img0.png
\---fichierPointJava
| img1.png
| <YourClass.java>

然后下面的应该工作

// using the classloader in instance context
getClass().getClassLoader().getResource("img0.png");
getClass().getClassLoader().getResource("fichierPointJava/img1.png");

// using the classloader in class/static context
<YourClass>.class.getClassLoader().getResource("img0.png");
<YourClass>.class.getClassLoader().getResource("fichierPointJava/img1.png");

// using the class in instance context
getClass().getResource("../img0.png");
getClass().getResource("/img0.png");
getClass().getResource("img1.png");
getClass().getResource("/fichierPointJava/img1.png");

// using the class in static/class context
<YourClass>.class.getResource("../img0.png");
<YourClass>.class.getResource("/img0.png");
<YourClass>.class.getResource("img1.png");
<YourClass>.class.getResource("/fichierPointJava/img1.png");

当使用 ClassLoader 时,您需要传递资源的完整限定名称,即包括包名称。

当使用 Class 时,路径 - 如果不是以 / 开头 - 是相对于试图加载资源的类所在的包,否则它是资源的绝对名称。

您可以阅读更多关于 ClassLoader#getResource 的信息和 Class#getResource在 javadocs 中。

确保您正在运行以创建 jar 的 ant 目标包含 *.png 资源。您可以使用您选择的压缩工具打开 jar 来验证这一点。不应包含目录 src

关于Java 路径 ImageIcon URL .JAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16924347/

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