java getResource() не работает



Это сводит меня с ума.
У меня есть проект NetBeans в папке со следующей структурой:



MyProject
---- build
---- src
---- resources


В src мой код находится в пакетах. То, что я пытаюсь сделать, это использовать



getClass().getResource("/resources/new.png"); 


Из класса в пакете com.мой.пакет, но он просто отказывается работать! Тот самый " новый.png " изображение находится в папке resources.
Я что-то упустил?



После долгих игр вокруг и перемещения "нового.png " изображение здесь и там, чтобы увидеть, когда он найдет изображение, он, наконец, работал, но только когда я помещаю изображение в папку сборки.
Итак, что я должен сделать, чтобы это сработало ?



Edit: извините, неверная строка в параметре метода. Исправлено сейчас

720   2  

2 ответов:

Я не знаком с NetBeans, но проблема, вероятно, в том, что папка resources (или корень проекта, если на то пошло) не находится на пути к классу, В отличие от build.

Необходимо настроить NetBeans для добавления корневой папки или resources в путь к классу и загрузки файла относительно этого пути.

Смотрите также этот вопрос: Java - getClassLoader().getResource () сводит меня с ума

Это прекрасно работает:

BufferedImage image = ImageIO.read(getClass().getClassLoader().getResourceAsStream("file_name"));

Comments

    Ничего не найдено.