当前位置: 首页 > 知识库问答 >
问题:

加载在ide中但未构建jar的Java映像

陈扬
2023-03-14

我的文件路径如下所示:

  +------------+           +-----------------+      +------------------+
  |            |           |                 |      |                  |
  | src        +----------->  com            +--+--->  application     |
  |            |           |                 |  |   |                  |
  +------------+           +-----------------+  |   +------------------+
                                                |
                                                |   +------------------+
                                                |   |                  |
                                                +--->  resources       |
                                                    |                  |
                                                    +------------------+

我的代码在应用程序文件夹中,我要加载的图片在资源中。

Im使用以下代码将图像从资源中获取到应用程序中的类中(图像是一个BuffereImage)。

image = ImageIO.read(new File("./src/com/resources/Pad.png"));

这似乎在我的IDE(intellij)工作,因为我可以看到加载的图像,如图所示

但是,当我构建时,图像不会显示。我正在建造:

档案-

然后我构建工件-

所以当我去构建的罐子的目的地并运行它时,没有任何图片被显示

我通过提取包含图片的罐子来检查图像是否在构建的罐子中,但是由于某种原因代码没有加载图片。

共有2个答案

利思源
2023-03-14

src路径在构建jar中不可用。您应该使用类加载器从类路径加载资源。假设src是类路径根

image = ImageIO.read(new File(this.getClass()                   
.getResource("com/resources/Pad.png").getPath());

使用@Mad程序员建议编辑。

赵渊
2023-03-14

您可以尝试将resourse用作流而不是文件。

image = ImageIO.read(this.getClass().getClassLoader().getResourceAsStream("com/resources/Pad.png"))
 类似资料:
  • 我见过很多人对在Eclipse中运行时加载的图像有相同的问题,但在从导出的JAR中运行时没有。我一直有这个问题,直到我找到了正确的解决方案。现在我遇到了一个问题,当从一个新导出的、可运行的JAR运行时,图像被加载,程序工作得非常完美,但在Eclipse中却不行!值得注意的是,我在我的机器上更新了Java! 它在Eclipse中运行得非常好,直到我解决了如何正确导出可运行的JAR,现在却没有!资产文

  • 问题 我试图把一个python文件变成一个EXE文件,但是我似乎每次都遇到同样的问题,无论是CX_Freeze还是PyInster。我只是尝试使用pyInster和我做了一个EXE文件使用命令 一切正常。它在dist文件中创建exe。但是,当我打开exe时,它会显示一个命令窗口,然后很快关闭。我设法捕获了我在使用打印屏幕时遇到的错误,它显示pygame错误:无法打开image family。jpg

  • 我试图遵循使用spring boot fat Jar使用Docker启动和运行的教程。我已经安装了一切,可以从Docker Hub运行Hello World示例。 我已经使用名为的Maven创建了fat jar,并使用以下内容作为我的dokerfile.docker: 如何从一个胖罐子构建docker映像?

  • 我有一个带有spring boot的java项目,我需要加载应用程序。外部文件夹中的属性和依赖项jar。 我使用该应用程序进行了测试。类路径和加载程序中的属性。路径属性工作正常。 当我使用外部属性文件(我确信它们已被使用)时,加载程序。路径工作不正常,结果为ClassNotFound,因为JAR未加载。 此外,当我启动应用程序与**-Dloader.path=**xxx它的工作正常。 如何使用外部

  • 我有一个Java项目已经准备就绪,但我在最后一个障碍上绊倒了。该程序在IDE中运行良好,但在我运行mvn clean install并成功创建目标jar后,应用程序在命令行和IDE中都会失败。我可以通过在IDE中进行重建,使其在IDE中再次运行。 还有其他人经历过类似的事情吗? mvn清洁安装后的错误是 它发生故障的线路如下所示: 如果我从IDE中重建,那么变量到达这里时不是null,但在mvn命