Комплект разработки Java
Разработчик(и) | Корпорация Oracle |
---|---|
Стабильная версия | 22.0.2 / 16 июля 2024 г [1] |
Написано в | Java, С++, C, Ассемблер [2] |
Операционная система | Windows , MacOS , Linux |
Платформа | аарх64 , x86-64 |
Лицензия | Условия использования Oracle без комиссии (NFTC) [3] со сторонними компонентами [4] |
Веб-сайт | oracle.com/java/technologies/ |
Java Development Kit ( JDK ) — это дистрибутив Java технологии корпорации Oracle . Он реализует спецификацию языка Java ( JLS ) и спецификацию виртуальной машины Java ( JVMS ), а также предоставляет стандартную версию ( SE ) интерфейса прикладного программирования Java ( API ). Это производная от OpenJDK, управляемого сообществом , которым управляет Oracle. [5] Он предоставляет программное обеспечение для работы с Java-приложениями. Примерами включенного программного обеспечения являются виртуальная машина Java, компилятор, инструменты мониторинга производительности, отладчик и другие утилиты, которые Oracle считает полезными для программистов Java.
Oracle выпускает текущую версию программного обеспечения в соответствии с лицензией Oracle No-Fee Rules and Conditions ( NFTC ). Oracle выпускает двоичные файлы для архитектуры x86-64 для операционных систем на базе Windows, macOS и Linux, а также для архитектуры aarch64 для macOS и Linux. Предыдущие версии поддерживали операционную систему Oracle Solaris и архитектуру SPARC .
Основная реализация JVMS от Oracle известна как HotSpot (виртуальная машина) .
Содержимое JDK
[ редактировать ]В качестве основных компонентов JDK имеет набор инструментов программирования, в том числе:
- appletviewer — этот инструмент можно использовать для запуска и отладки Java-апплетов без веб-браузера.
- apt — инструмент обработки аннотаций [6]
- extcheck — утилита, обнаруживающая конфликты файлов JAR
- idlj — компилятор IDL-to-Java. Эта утилита генерирует привязки Java из заданного файла Java IDL .
- jabswitch — мост доступа к Java . Предоставляет вспомогательные технологии в системах Microsoft Windows.
- java – загрузчик Java-приложений. Этот инструмент является интерпретатором и может интерпретировать файлы классов, созданные компилятором javac . Теперь для разработки и развертывания используется один лаунчер. Старого средства запуска развертывания jre больше нет [update] поставляется с Sun JDK, но вместо этого он был заменен новым загрузчиком Java.
- javac — компилятор Java , преобразующий исходный код в байт-код Java.
- javadoc — генератор документации, который автоматически генерирует документацию из исходного кода . комментариев
- jar — архиватор, который упаковывает связанные библиотеки классов в один JAR-файл . Этот инструмент также помогает управлять файлами JAR.
- javafxpackager — инструмент для упаковки и подписи приложений JavaFX.
- jarsigner — инструмент подписи и проверки jar
- javah — генератор заголовка и заглушки C, используемый для написания собственных методов.
- файлов классов javap — дизассемблер
- javaws — средство запуска Java Web Start для приложений JNLP.
- JConsole — консоль мониторинга и управления Java
- jdb — отладчик
- jhat — инструмент анализа кучи Java (экспериментальный)
- jinfo — эта утилита получает информацию о конфигурации из запущенного процесса Java или аварийного дампа. (экспериментальный)
- jmap Oracle jmap — Карта памяти — эта утилита выводит карту памяти для Java и может печатать карты памяти общих объектов или сведения о куче памяти данного процесса или дампа ядра. (экспериментальный)
- jmc - Управление полетами Java
- jpackage – инструмент для создания автономных пакетов приложений. (экспериментальный)
- jps — инструмент состояния процесса виртуальной машины Java перечисляет оснащенные виртуальные машины Java HotSpot (JVM) в целевой системе. (экспериментальный)
- командной строки Java сценария jrunscript — оболочка .
- jshell — цикл чтения-оценки-печати , представленный в Java 9.
- jstack — утилита, которая печатает трассировки стека Java потоков Java (экспериментальная)
- jstat — инструмент мониторинга статистики виртуальной машины Java (экспериментальный)
- jstatd – демон jstat (экспериментальный)
- keytool – инструмент для управления хранилищем ключей
- Pack200 — инструмент сжатия JAR
- policytool – инструмент создания и управления политикой, который может определять политику для среды выполнения Java, определяя, какие разрешения доступны для кода из различных источников.
- VisualVM – визуальный инструмент, объединяющий несколько инструментов JDK командной строки и легкий [ нужны разъяснения ] производительности и памяти возможности профилирования (больше не включены в JDK 9+)
- wsimport — генерирует переносимые артефакты JAX-WS для вызова веб-службы.
- xjc — часть API Java для привязки XML (JAXB). Он принимает схему XML и генерирует классы Java.
Экспериментальные инструменты могут быть недоступны в будущих версиях JDK.
JDK также поставляется с полной средой выполнения Java (JRE), обычно называемой частной средой выполнения, поскольку она отделена от «обычной» JRE и имеет дополнительное содержимое. Он состоит из виртуальной машины Java и всех библиотек классов, присутствующих в производственной среде, а также дополнительных библиотек, полезных только для разработчиков, таких как библиотеки интернационализации и библиотеки IDL .
Копии JDK также включают широкий набор примеров программ, демонстрирующих использование почти всех частей Java API .
Другие JDK
[ редактировать ]Помимо наиболее широко используемого JDK, обсуждаемого в этой статье, существуют и другие JDK, обычно доступные для различных платформ, некоторые из которых берут начало из исходного кода Sun JDK, а некоторые нет. Все они соответствуют базовым спецификациям Java, но часто различаются в явно неуказанных областях, таких как сбор мусора, стратегии компиляции и методы оптимизации. Они включают в себя:
В режиме разработки или обслуживания:
- Azul Systems Zing, JDK с низкой задержкой для Linux; [7]
- Zulu на основе Azul Systems / OpenJDK для Linux, Windows, Mac OS X, встроенных систем и облака; [8]
- OpenJDK / IcedTea ;
- Айкас ЯмайкаVM ;
- IBM J9 JDK для AIX, Linux, Windows, MVS, OS/400, Pocket PC, z/OS; [9]
Не поддерживается и не прекращается:
- Апач Гармония ;
- Apple среда выполнения Mac OS от для Java JVM/JDK для классической Mac OS ; [10]
- Blackdown Java – порт Sun JDK для Linux; [11] [12]
- и GNU путь к классам GCJ ( компилятор GNU для Java );
- Oracle JDK корпорации JRockit для Windows, Linux и Solaris; [13]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Объединенные примечания к выпуску JDK 22» . Корпорация Оракл . Проверено 2 августа 2024 г.
- ^ «На основе исходников OpenJDK» . OpenJDK . Проверено 23 октября 2021 г.
- ^ «Бесплатная лицензия Oracle на условия использования» . Корпорация Оракл . Проверено 23 октября 2021 г.
- ^ «Руководство пользователя с информацией о лицензировании» (PDF) . Корпорация Оракл . Проверено 23 октября 2021 г.
- ^ «Часто задаваемые вопросы по OpenJDK» . OpenJDK . Проверено 23 октября 2021 г.
- ^ «API и руководства для разработчиков, связанные с JDK 5.0 Java Annotation Processing Tool (APT) — от Sun Microsystems» . Проверено 5 августа 2012 г.
- ^ «Страница продукта Azul Zing» .
- ^ «Страница загрузки Azul Zulu» .
- ^ «developerWorks: Комплекты разработчика IBM: Загрузки» . Проверено 5 августа 2012 г.
- ^ «Поддержка Apple» . Архивировано из оригинала 13 декабря 2007 года.
- ^ «Контактная информация Java Linux» . Архивировано из оригинала 7 августа 2007 года . Проверено 5 августа 2012 г.
- ^ «Последняя информация о Java-Linux» . Архивировано из оригинала 19 октября 1996 года . Проверено 5 августа 2012 г.
- ^ «Страница загрузки семейства JRockit» . Проверено 5 августа 2012 г.
Внешние ссылки
[ редактировать ]- Oracle Java SE
- Дорожная карта поддержки Oracle Java SE
- Проект OpenJDK с открытым исходным кодом
- OpenJDK строится на основе Oracle
- OpenJDK создается на основе AdoptOpenJDK
- Загрузки IBM Java SDK
- Проект JDK 7 с открытым исходным кодом
- GNU Classpath – бесплатного программного обеспечения альтернатива JDK [ нужна ссылка ]