Разработчики) | Корпорация Oracle |
---|---|
Стабильный выпуск | 16/16 марта 2021 г . |
Операционная система | Windows NT , macOS (x64), Linux , Solaris |
Платформа | IA-32 , x64 , ARM , SPARC |
Тип | Комплект для разработки программного обеспечения |
Лицензия | Лицензия Sun (большая часть также под лицензией GPL) |
Веб-сайт | www |
Kit Java Development ( JDK ) является реализацией либо одного из Java Platform, Standard Edition , Java Platform, Enterprise Edition , или Java Platform, Micro Edition платформы [1] , опубликованной корпорация Oracle в виде бинарного продукта , направленных на Разработчики Java на Solaris , Linux , macOS или Windows . JDK включает частную JVM и несколько других ресурсов для завершения разработки приложения Java. [2] С момента появления JavaПлатформа, это был, безусловно, наиболее широко используемый комплект разработки программного обеспечения ( SDK ). [ необходима цитата ]
JDK доступен для 64-разрядной x64 macOS (и эта версия также работает с Rosetta 2 ), а сборка с ранним доступом (предварительная версия для разработчиков) от Microsoft также доступна для поддержки последних компьютеров Mac Apple M1 . [3] [4] [5]
Содержимое JDK [ править ]
JDK имеет в качестве основных компонентов набор инструментов программирования, в том числе:
- appletviewer - этот инструмент можно использовать для запуска и отладки Java-апплетов без веб-браузера.
- apt - инструмент для обработки аннотаций [6]
- extcheck - утилита, обнаруживающая конфликты файлов JAR
- idlj - компилятор IDL-to-Java. Эта утилита генерирует привязки Java из заданного файла IDL Java .
- jabswitch - мост доступа к Java . Предоставляет вспомогательные технологии в системах Microsoft Windows.
- java - загрузчик для Java-приложений. Этот инструмент является интерпретатором и может интерпретировать файлы классов, созданные компилятором javac . Теперь и для разработки, и для развертывания используется одна пусковая установка. Старая программа запуска развертывания, jre, больше не [Обновить]поставляется с 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 Mission Control
- jpackage - инструмент для создания автономных пакетов приложений. (экспериментальный)
- jps - Инструмент состояния процесса виртуальной машины Java перечисляет оснащенные виртуальными машинами Java (JVM) HotSpot в целевой системе. (экспериментальный)
- jrunscript - оболочка сценария командной строки Java .
- jshell - новая оболочка jshell, представленная в java 9.
- jstack - утилита, которая печатает трассировку стека Java потоков Java (экспериментальная)
- jstat - инструмент мониторинга статистики виртуальной машины Java (экспериментальный)
- jstatd - демон jstat (экспериментальный)
- keytool - инструмент для управления хранилищем ключей
- pack200 - инструмент для сжатия JAR
- policytool - инструмент создания политик и управления ими, который может определять политику для среды выполнения Java, указывая, какие разрешения доступны для кода из различных источников.
- VisualVM - визуальный инструмент, объединяющий несколько инструментов JDK командной строки и облегченные [ требуется пояснение ] производительность и возможности профилирования памяти.
- wsimport - генерирует переносимые артефакты JAX-WS для вызова веб-службы.
- xjc - часть Java API для XML Binding (JAXB) API. Он принимает схему XML и генерирует классы Java.
Экспериментальные инструменты могут быть недоступны в будущих версиях JDK.
JDK также поставляется с полной средой выполнения Java , обычно называемой частной средой выполнения, из-за того, что она отделена от «обычной» JRE и имеет дополнительное содержимое. Он состоит из виртуальной машины Java и всех библиотек классов, имеющихся в производственной среде, а также дополнительных библиотек, полезных только для разработчиков, таких как библиотеки интернационализации и библиотеки IDL .
Копии JDK также включают широкий выбор примеров программ, демонстрирующих использование почти всех частей Java API .
Неопределенность между JDK и SDK [ править ]
JDK образует расширенное подмножество комплекта разработки программного обеспечения (SDK). Он включает «инструменты для разработки, отладки и мониторинга приложений Java». [7] Oracle настоятельно рекомендует использовать термин JDK для обозначения Java SE Development Kit. Пакет SDK для Java SE доступен с JDK или без него, под которым конкретно подразумевается Java SE 7 JDK. [8]
Другие JDK [ править ]
В дополнение к наиболее широко используемому JDK, обсуждаемому в этой статье, существуют другие JDK, обычно доступные для множества платформ, некоторые из которых были запущены из исходного кода Sun JDK, а некоторые нет. Все они соответствуют основным спецификациям Java, но часто отличаются явно неуказанными областями, такими как сборка мусора, стратегии компиляции и методы оптимизации. Они включают:
В режиме разработки или обслуживания:
- Azul Systems Zing, JDK с низкой задержкой для Linux; [9]
- Zulu на базе Azul Systems / OpenJDK для Linux, Windows, Mac OS X, встраиваемых систем и облака; [10]
- OpenJDK / IcedTea ;
- Aicas JamaicaVM ;
- IBM J9 JDK, для AIX, Linux, Windows, MVS, OS / 400, Pocket PC, z / OS; [11]
Не поддерживается или прекращается:
- Гармония Апачей ;
- Яблоко «s Mac OS для выполнения Java JVM / JDK для Классического Mac OS ; [12]
- Blackdown Java - порт JDK Sun для Linux; [13] [14]
- GNU «s Classpath и GCJ (The GNU Compiler для Java );
- Корпорация Oracle «s JRockit JDK для Windows, Linux и Solaris; [15]
См. Также [ править ]
- Путь к классам (Java)
- Платформа Java
- История версий Java
Ссылки [ править ]
- ^ «Возможности и улучшения Java SE 7» . Корпорация Oracle . Проверено 1 января 2013 года .
- ^ "Домашняя страница OpenJDK" . Корпорация Oracle и / или ее дочерние компании . Проверено 1 января 2013 года .
- ^ «Выпуск 16-ea + 10-macOS-aarch64 · microsoft / openjdk-aarch64» . GitHub . Проверено 26 января 2021 года .
- ^ "Работает ли OpenJDK на кремнии Apple?" . isapplesiliconready.com . Проверено 26 января 2021 года .
- ^ "Последний выпуск | AdoptOpenJDK" . accepttopenjdk.net . Проверено 26 января 2021 года .
- ^ "JDK 5.0 Java Annotation Processing Tool (APT) APIs & Developer Guides - from Sun Microsystems" . Проверено 5 августа 2012 года .
- ^ «Загрузки Java SE» . Oracle . Проверено 10 июля 2013 года .
- ^ «Для дистрибутивов Java EE 7 SDK требуется JDK 7» «Платформа Java, Enterprise Edition 7 SDK - Инструкции по установке» . Установка программного обеспечения . Oracle . Проверено 10 июля 2013 года .
- ^ "Страница продукта 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 SDK Java Technology Edition
- Проект JDK 7 с открытым исходным кодом
- GNU Classpath - альтернатива JDK бесплатного программного обеспечения [ необходима ссылка ]