Maven путь к ресурсам

#java #maven

#java #maven

Вопрос:

Я заканчиваю свой проект и хочу добавить несколько фотографий в качестве значков. Этот проект находится в Maven.

Я просто не знаю, как правильно получить path. Я перепробовал все возможные пути.

введите описание изображения здесь

         JLabel fLabel = new JLabel("Text");
        fLabel.setBounds(375,5,50,50);
        ImageIcon icon = new ImageIcon(".//resources/flag.png");

        fLabel.setIcon(icon);


        this.add(fLabel);
  

Комментарии:

1. Вы имеете в виду Maven? Если это так, пожалуйста, добавьте соответствующие теги. Кроме того, пожалуйста, включите код в виде текста , а не в виде изображения.

2. Не могли бы вы рассказать мне, как вы понимаете этот путь

Ответ №1:

содержимое src/main/resources/ каталога из Maven напрямую добавляется в путь к классу вашего скомпилированного jar.

Таким образом, он должен работать с прямым адресом к файлу без указания пути.

 ImageIcon icon = new ImageIcon("flag.png");
  

Ответ №2:

Ваши изображения находятся в правильном каталоге.

В вашем коде вместо передачи пути передайте URL-адрес следующим образом:

 var flagIconUrl = this.getClass().getClassLoader().getResource("flag.png");
var icon = new ImageIcon(flagIconUrl);