Библиотека сайта rus-linux.net
Beyond Linux From Scratch. Version 2011-12-30 | ||
Назад | 12. Программирование | Вперед |
Пакет JDK-6 Update 18
Знакомимся с пакетом JDK
В пакете JDK находится среда разработки языка Java, созданная фирмой Sun. Она используется для разработки Java-программ и предоставляет среду исполнения, необходимую для запуска Java-программ. Также есть плагин для браузеров, позволяющим им использовать язык Java.
ЗамечаниеФирма Sun недавно приняла решение не предоставлять исходные коды JRL для последних версий JDK. Sun активно работает на версией JDK под лицензией GPL, которая называется OpenJDK. Этот новый JDK будет лицензирован под лицензией GNU General Public License, version 2, with the Classpath Exception. На момент написания данной книги, стабильная версия OpenJDK была недоступна. |
Информация о пакете
- Загрузка (jdk-6u18-linux-i586.bin): http://java.sun.com/javase/downloads/index.jsp
- Контрольная сумма MD5: ad5ee976522bf5767100a8b4b981c690
- Размер загружаемого пакета: 85 MB
- Оценочный размер требуемого дискового пространства: 250 MB
- Оценочное время сборки: 0,1 SBU
Зависимости пакета JDK
Необязательные зависимости времени исполнения
ALSA Library-1.0.24.1, CUPS-1.5.0 и gtk+-2.24.8
Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/jdk
Установка пакета JDK
СоветКоманда ./jdk-6u18-linux-i586.bin, приведенная ниже, распаковывает дистрибутив в директорий |
Как правило, в BLFS файлы распаковываются в поддиректорий и это место является отправной точкой установочных процедур. Однако для этого приложения надо начинать с директория, в котором находятся скачанные файлы.
Установите пакет JDK с помощью следующих команд:
chmod 755 jdk-6u18-linux-i586.bin && ./jdk-6u18-linux-i586.bin
ЗамечаниеУстановка завершится сообщением "./jdk-6u18-linux-i586.bin: line 43: 20283 Aborted" поскольку в среде окружения не установлена переменная javaprefix. Это связано с тем, что пакет GTK+ может быть еще не установлен во время установки пакета JDK, однако если сборка выполняется с помощью скрипта, установка пакета JDK будет завершена с нулевым значением ошибки. |
Теперь в роли пользователя root
выполните:
cd jdk1.6.0_18 && install -v -m755 -d /opt/jdk-6u18 && mv -v * /opt/jdk-6u18 && chown -v -R root:root /opt/jdk-6u18 && ln -v -sf xawt/libmawt.so \ /opt/jdk-6u18/jre/lib/i386/ && cd ..
Последние версии libX11 в случае, когда используется расширение Xinerama, выводят из строя библиотеку libmawt. Чтобы обойти эту проблему, вы должны находясь в роли пользователя root
применить следующую команду sed:
sed -i 's@XINERAMA@FAKEEXTN@g' \ /opt/jdk-6u18/jre/lib/i386/xawt/libmawt.so
Пояснение команды
ln -sf xawt/libmawt.so /opt/jdk-6u18/jre/lib/i386/: С помощью этой команды исправляются проблемы компоновки с другими приложениями, которые предполагают найти библиотеки motif вместе с другими библиотеками JDK.
Конфигурирование пакета JDK
Подробнее о конфигурировании
В роли пользователя root
создайте символическую ссылку на установочный директорий:
ln -v -nsf jdk-6u18 /opt/jdk
В информации, приводимой ниже, предполагается, что ваша система настроена в соответствии с инструкциями, приведенными в Файлы запуска командной оболочки Bash. Если у вас система настроена по-другому, то вам, возможно, придется найти информацию, соответствующую той, что приведена ниже, и включить ее в файлы запуска вашей системы.
В роли пользователя root
добавьте файл запуска командной оболочки jdk.sh
в директорий /etc/profile.d
с помощью следующих команд:
cat > /etc/profile.d/jdk.sh << "EOF" # Начало /etc/profile.d/jdk.sh # Указывается директорий JAVA_HOME JAVA_HOME=/opt/jdk # Настраивается переменная PATH pathappend ${JAVA_HOME}/bin PATH # Переменная CLASSPATH для автоматической работы Java # Скопируйте в этот директорий файлы jar, либо создайте на этот директорий символические ссылки AUTO_CLASSPATH_DIR=/usr/lib/classpath pathprepend . CLASSPATH for dir in `find ${AUTO_CLASSPATH_DIR} -type d 2>/dev/null`; do pathappend $dir CLASSPATH done export JAVA_HOME CLASSPATH unset AUTO_CLASSPATH_DIR unset dir # Завершение /etc/profile.d/jdk.sh EOF
Java-плагин находится в $JAVA_HOME/jre/lib/i386/libnpjp2.so
. Создайте символическую ссылку на файл в этом директории из директория плагинов вашего браузера.
ВажноДля того, чтобы плагин работал, на него должна быть сделана символическая ссылка. Если ссылки нет, то любой браузер "вылетит" при попытке загрузить приложение Java. |
Описание пакета
Установленные программы: appletviewer, apt, extcheck, idlj, HtmlConverter, jar, jarsigner, java, javac, javadoc, javah, javap, java-rmi.cgi, javaws, jconsole, jcontrol, jdb, jhat, jinfo, jmap, jps, jrunscript, jsadebugd, jstack, jstat, jstatd, jvisualvm, keytool, native2ascii, orbd, pack200, policytool, rmic, rmid, rmiregistry, schemagen, serialver, servertool, tnameserv, unpack200, wsgen, wsimport и xjc
Установленные библиотеки: $JAVA_HOME
/lib/*, $JAVA_HOME
/jre/lib/*
Установленные директории: /opt/jdk-6u18
Краткое описание
appletviewer | запускает Java-апплеты вне контекста браузера |
apt | является инструментальным средством обработки аннотаций |
extcheck | проверяет, конфликтует ли заголовок и версия указанного файла jar с какими-либо расширениями, установленными в пакете JDK |
HtmlConverter | добавляет автоматическую загрузку Java на страницы html и asp |
idlj | генерирует Java-сборку из указанного файла IDL |
jar | объединяет несколько файлов в одном архив jar |
jarsigner | подписывает файлы jar и проверяет сигнатуры и целостность подписанного файла jar |
java | запускает Java-приложение с помощью среды времени исполнения Java Runtime, загружая для этого указанный класс и вызывая его метод main |
javac | читает определения класса и интерфейса, написанные на языке программирования Java, и компилирует их в файлы классов с байт-кодом |
javadoc | анализирует декларации и комментарии с документацией в наборе файлов с исходным кодом Java и создает соответствующий набор страниц HTML, описывающий классы, интерфейсы, конструкторы, методы и поля |
javah | строит заголовки С и файлы с исходным кодом, которые необходимы для реализации нативных методов |
javap | дизассемблирует файл с классом Java |
java-rmi.cgi | является Java RMI клиентом |
javaws | запускает Java-приложения/апплеты, размещенные в сети |
jconsole | является графической консолью, предназначенной мониторинга и управления как локальными, так и удаленными Java-приложениями и виртуальными машинами |
jcontrol | является графической панелью управления Java |
jdb | простой отладчик командной строки для классов Java |
jhat | анализирует дамп-файл Java-кучи и позволяет просматривать результат в браузере |
jinfo | выдает информацию о конфигурации для данного процесса Java, основном файле или удаленном сервере отладки |
jmap | выдает для данного процесса подробную информацию об отображении объектов в памяти и о памяти типа куча,основном файле или удаленном сервере отладки |
jps | выдает список инструментальных виртуальных машин JVM на целевой системе |
jrunscript | командная оболочка, предназначенная для выполнения команд командной строки |
jsadebugd | подключается к процессу Java или к основному файлу и выступает в качестве сервера отладки |
jstack | печатает Java трассировку стека потоков Java для заданного Java-процесса, основного файла или удаленного сервера отладки |
jstat | отображает статистику производительности для инструментальной JVM |
jstatd | серверное приложение RMI, которое отслеживает создание и завершение инструментальных JVM |
jvisualvm | является интуитивно понятный графическим интерфейсом пользователя, который предоставляет подробную информацию о приложениях Java, когда они работают на данной JVM |
keytool | утилита управления ключами и сертификатами |
native2ascii | преобразует файлы, в которых есть символы неподдерживаемой кодировку в файлы, содержащие символами кодировок Latin-1 или Unicode |
orbd | используется, чтобы позволить клиентам на серверах в среде CORBA прозрачно находить и вызывать постоянно существующие (persistent) объекты |
pack200 | представляет собой приложение Java, которое с помощью компрессора Java gzip преобразует файл jar в сжатый файл pack200 |
policytool | в графическом режиме создает и управляет политикой файла |
rmic | по именам скомпилированных классов Java, в которых находятся реализации объектов удаленного доступа, создает файлы классов с заглушками и заготовками, предназначенных для доступа к удаленным объектам |
rmid | запускает демон активации системы |
rmiregistry | создает и запускает реестр удаленных объектов на указанном порту текущего хоста |
schemagen | является Java-генератором схем на XML |
serialver | возвращает serialVersionUID для одного или нескольких классов в виде, пригодном для копирования в разворачиваемом классе |
servertool | предоставляет простой в использовании интерфейс для прикладных программистов, используемый для регистрации, отмены регистрации, запуска и завершения работы сервера |
tnameserv | запускает сервер имен IDL языка Java |
unpack200 | является нативной реализацией, с помощью которой осуществляется преобразование упакованного файла, созданного с помощью pack200 в файл jar |
wsgen | создает портируемые варианты JAX-WS, используемый в веб сервисах |
wsimport | создает портируемые элементы JAX-WS |
xjc | является Java-компилятором, осуществляющим привязку XML |
Перевод сделан с варианта оригинала, датированного 2010-02-13 02:16:43 +0000
Предыдущий раздел: | Оглавление | Следующий раздел: |
Пакет IcedTea6-1.9.7 | Пакет JUnit-4.8.1 |