Экспортированный файл JAR не будет читать файл внутри JAR
В приведенном ниже примере кода, когда я тестирую код в Eclipse, он работает просто отлично. Однако, когда я экспортирую файл jar и проверяю его через командную строку, он выдает ошибку:IIOException: Can't read input file!
private BufferedImage img = null;
private String imgSource;
if (img == null)
{
try {
URL url = getClass().getResource("Images/questionMark.png");
System.out.println(url.getPath());
/* This prints: file:/C:/Users/Keno/Documents/javaFile.jar!/javaFile/Images/questionMark.png */
File file = new File(url.getPath());
img = ImageIO.read(file);
imgSource = file.getName();
} catch (IOException e) {
e.printStackTrace();
}
}
Файл, который я хочу получить, находится в папке Images, которая находится внутриjavaFile
пакет. Я заметил одну вещь, которая может указывать на проблему.
Кроме того, на всякий случай, если у кого-то есть лучшее предложение относительно того, как мне загрузить файл, я сообщу вам о своих намерениях. Я хотел бы загрузить файл из относительного места (папка изображений) в банке. Я хотел бы отобразить его (уже сделано в моем реальном коде), а также сохранить местоположение, которое будет передано позже другой функции (также выполнено).