понедельник, 10 июня 2013 г.

Механизм разширения JVM платформы

Есть возможность к бутстрапным джарникам, еще с теми же правами досутпа, установить так называемые Extension Packages, которые в последних платформах называются Optional Packages.
Эти пакеты считаются проинсталированными после того как они оказались в
%winhome%\Sun\Java\lib\ext
<jre>/lib/ext



Первый вариант устанавливает для псех jvm-ов находящихся на компьютере, второй - для конткетной jvm.
В этих каталогах мы можем предоставить джарники, но также мы можем представить платформо-специфические библиотеки (.dll например), их мы можем установить в следующие директории:

<jre>\bin                   [Microsoft Windows]
<jre>/lib/<arch>      [Linux] <arch> = sparc | sparcv9 | i386   
Для всех jvm-платформ:
%SystemRoot%\Sun\Java\bin         [Microsoft Windows]
/usr/java/packages/lib/           [Linux]

C расширением существует еще один связанный механизм, который касается безопасности. Называется он запаковывание. Запаковать мы можем либо весь архив, либо конкетрные пакеты в нем. Означает это, что классы из запакованного(или пакета или всего архива) могут исопльзовать классы только те, которые находятся в данном паекте.

Запаковать конкретный пакет:


 Name: javax/servlet/internal
 Sealed: true

 Весь архив:
Sealed: true

 Весь архив кроме указанного пакета:
Sealed: true

Name: domain/sub1/sub2/
Sealed: true

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

&ltljre&gtl/lib/security/java.policy

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

Отправить комментарий