Активы не загружаются внутри файла jar апплета

У меня есть файл jar с апплетом. Этот апплет работает отлично, за исключением одного: когда я запускаю апплет, программа загружается, а изображения нет. Я знаю, что это единственная ошибка. Файл манифеста внутри jar указывает на другой jar, который я использую внутри него, и я знаю, что он импортирован правильно. Что может быть не так?


person rdelfin    schedule 24.04.2012    source источник


Ответы (1)


Где изображения?

-> Если они развернуты в банке, вам необходимо получить к ним доступ из пути к классам в качестве ресурса.

Что-то типа,

ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream input = classLoader.getResourceAsStream("/resources/image.jpg");
Image logo = ImageIO.read(input);

Апплеты обычно имеют ограничения, они могут подключаться только к тому серверу, который их обслуживал.

person Olivier Refalo    schedule 24.04.2012
comment
они внутри баночки. Кроме того, вы добавляете пакеты в путь к классам или изображения по одному? - person rdelfin; 24.04.2012
comment
Я не понимаю вашего вопроса. сам апплет входит в состав СР, тут делать нечего. внутри банки в папке с именем /resources сбрасывайте свои изображения - person Olivier Refalo; 24.04.2012
comment
это так, но почему-то апплет не показывает изображения - person rdelfin; 24.04.2012
comment
Вы используете приведенный выше код, как вы ссылаетесь на изображение, как вы его читаете. Нам нужны дополнительные навыки, чтобы читать по вашим глазам... - person Olivier Refalo; 24.04.2012
comment
Вы добавляете пакеты в путь к классам или изображения по одному? Если все классы и изображения находятся в одном Jar, их можно добавить в путь к классам во время выполнения апплета. добавив ссылку на банку в атрибут archive элемента applet. @OlivierRefalo Нам нужны дополнительные навыки, чтобы читать твоими глазами... Это или экстрасенс. ;) - person Andrew Thompson; 24.04.2012