Производительность апплета: загрузка всех jar-файлов при запуске или только когда нужен класс? - PullRequest
2 голосов
/ 13 февраля 2012

В настоящее время мой апплет загружается с использованием нескольких библиотек lib, я помещаю их в архив:

<applet
archive="MainJar.jar,lib/jar1.jar,lib/jar2.jar,lib/jar3.jar" 
code="start.MainClass.class"
name = "Testing" 
width=1280 height=800>
<PARAM NAME="zoomon" VALUE="true">
</applet>

Могу я узнать:

  • Все ли мои библиотеки jar (jar1.jar, jar2.jar, jar3.jar) загружается при запуске апплета или загружается только при обращении к классам?
  • Если к библиотекам снова обращаются, библиотеки jar можно использовать как уже загруженные илиони будут повторно загружены?
  • Как я могу загрузить все jar (включая lib jars) при запуске апплета?
  • Как включить все файлы jar в мой файл MainJar.jar?

Ответы [ 3 ]

2 голосов
/ 13 февраля 2012
  • С нетерпением (используя эту форму запуска апплета). 1
  • Они должны быть кэшированы.Одной из проблем для разработчиков апплетов является получение апплета для загрузки обновленной Jar вместо использования кэшированной версии.
  • Способ написания тега апплета - автоматический. 1
  • Если под «включить в основную банку» вы подразумеваете развертывание только одной «толстой» банки, содержащей все, не делайте этого.Лучше держать Jars отдельно по ряду причин.

  1. Java Web Start предоставляет возможность отложенной загрузки Jars, а также программную(ваш код) контроль загрузок.
0 голосов
/ 05 июня 2012

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

0 голосов
/ 13 февраля 2012

Я попытался создать апплет и получить к нему доступ через браузер, и кажется, что все файлы JAR загружаются немедленно и используются повторно, пока кэш не очищен.

...