getClass().getResource() 总是返回 null

新手上路,请多包涵

我正在尝试在我的 src 文件夹中设置位于我的资源文件夹中的图像的 URL。它总是将 URL 设置为空。图像在那里,一切都被正确命名。问题是什么?谢谢!

我的文件结构:

  • sp1
    • 来源
      • 资源
        • 01.png

这是我尝试为图片设置 URL 的代码:

 this.setImagePath(getClass().getResource("/resources/01.png"));


setImagePath 正在执行此操作,我确定这不是问题所在,因为我遵循了执行并将其设置为 null。

 public final void setImagePath(URL imagePath) {
    this.imagePath = imagePath;
}


解决方案

我不得不清理构建并重建。它在修复之后起作用了。

原文由 prolink007 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 906
2 个回答

我不得不清理构建然后重建。现在工作。

原文由 prolink007 发布,翻译遵循 CC BY-SA 3.0 许可协议

您需要检查图像文件是否已复制到类文件编译到的位置,无论您正在构建什么。也就是说,如果您的课程是 com.foo.MyImageLoader 并且位于 <build dir>/com/foo/MyImageLoader.class ,那么图像应该位于 <build dir>/resources/01.png 以便您能够加载它。

原文由 Ryan Stewart 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题