无法在 jar 中加载资源

Jag*_*er3 2 java zip export jar

我正在尝试在 jar 中加载资源,这是导出的 jar: 在此处输入图片说明

'main' 是我所有类的包,在其中一个类中,我试图加载 background.png 文件。在我的 Eclipse 项目中,我将资源放在“res/”文件夹下,我将其添加到构建路径中以包含它。当我尝试使用

新文件(“背景.png”);

它找不到文件。当我使用

MyClass.class.getClass().getClassLoader().getResource("background.png");

它仍然找不到文件。

wer*_*ero 6

打包在 jar 中的文件不能作为File对象访问。

当你尝试

MyClass.class.getClass().getClassLoader().getResource("background.png");
Run Code Online (Sandbox Code Playgroud)

您实际上使用的是ClassLoaderofjava.lang.Class而 not ofmain.MyClass可能无法找到资源(如果它是系统类加载器)。尝试

MyClass.class.getClassLoader().getResource("background.png");
Run Code Online (Sandbox Code Playgroud)

反而。

  • 终于在互联网上搜索了几个小时后,这解决了问题 (2认同)