[英]Accessing File With Executable Jar
我得到的文件是这样的:
File testHeaderFile = new File(ClassLoader.getSystemResource("Images/redHeader.jpg").toURI());
当我在eclipse中编译时,此方法有效,但是当我从可执行jar运行时,则无效。
这段代码与罐子一起工作:
ImageIcon pc = new ImageIcon(getClass().getClassLoader().getResource("Images/stateFarmTheme1Icon.png"));
我到底在做什么错?
每个类加载器都有自己的搜索路径。
ClassLoader.getSystemResource:只需从搜索路径中找到指定名称的资源(在eclipse中包含项目目录),该资源用于加载类并通过系统类loader.so找到该资源,因此不包含可执行jar目录。
getClass()。getClassLoader()。getResource:此方法将首先在父类加载器中搜索资源; 如果父级为null,则搜索虚拟机内置的类加载器的路径。因此,包括可执行jar目录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.