【发布时间】:2019-03-02 23:25:27
【问题描述】:
我正在使用 java swing 应用程序。我正在使用放置在 uploads 文件夹中的图标图像。当我运行我的项目时,它工作正常。
我将我的项目导出为 jar。当我运行我的 jar 文件时,它显示 file not found 错误。
这是我的代码,
BufferedImage img = ImageIO.read(new File(Config.IMAGE_RESOURCE_FOLDER + "/" + fileName));
【问题讨论】:
-
应用程序资源在部署时将成为嵌入式资源,因此明智的做法是立即开始访问它们。 embedded-resource 必须通过 URL 而不是文件访问。请参阅info. page for embedded resource 了解如何形成 URL。
-
顺便说一句 -
Config.IMAGE_RESOURCE_FOLDER的值是什么(它指向什么路径)? -
Config.IMAGE_RESOURCE_FOLDER = "图片"
-
我在静态方法中使用了这个功能。所以当我使用 this.getClass().getResource("/path/to/the.resource");它不工作。而不是这个,我也尝试使用 sttic 方法类。但不工作。
-
您的代码当前正在寻找位于
./images目录中的文件,其中.是当前 目录,即java程序所在的目录开始了。因此,如果您没有从正确的目录执行 Java,或者如果您的图像位于名为uploads的文件夹中,则它可能无法工作。
标签: java file jar embedded-resource