Java - Инструментарий getImage (URL) не будет работать после сборки / компиляции Maven - PullRequest
0 голосов
/ 05 марта 2020

Мне нужно загрузить файл изображения из моей папки "src / main / resources / images".

Запуск следующего кода внутри eclipse работает нормально:

Image image = Toolkit.getDefaultToolkit().getImage(Thread.currentThread().getClass().getResource("/images/icon.gif"));

Но когда я запустите mvn clean package и java -jar my-app.jar В журнале я получаю следующее возвращение:

Exception in thread "main" java.lang.NullPointerException
    at java.desktop/sun.awt.SunToolkit.getImageFromHash(SunToolkit.java:653)
    at java.desktop/sun.awt.SunToolkit.getImage(SunToolkit.java:689)
    at myApp.Main.main(Main.java:51)

Если я пытаюсь напечатать значение Thread.currentThread().getClass().getResource("/images/icon.gif"), после запуска maven возвращается ноль.

Пожалуйста, как я могу прочитать этот файл ресурсов после сборки и компиляции моего приложения с Maven?

Это мой pom. xml файл:

<build>
    <finalName>my-app</finalName>
    <sourceDirectory>src/main/java</sourceDirectory>
    <resources>      
          <resource>
            <directory>src/main/resources</directory>
          </resource>
    </resources>
    <plugins>
        <plugin>
          <artifactId>maven-assembly-plugin</artifactId>
          <configuration>
            <archive>
              <manifest>
                <mainClass>myapp.Main</mainClass>
              </manifest>
            </archive>
            <descriptorRefs>
              <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
          </configuration>
          <executions>
            <execution>
              <id>make-assembly</id>
              <phase>package</phase>
              <goals>
                <goal>single</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
    </plugins>
  </build>

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...