Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Корпорация Майкрософт признает и поддерживает внедрение пользовательских сред выполнения Java, созданных для конкретных приложений, а не использование сред выполнения Java общего назначения. Этот метод развертывания Java гарантирует, что среда выполнения Java содержит только части платформы Java, которые действительно необходимы приложениям, поэтому повышают безопасность, сокращают размер развертывания и повышают производительность как для облачных, так и для серверных приложений Java, а также для классических и графических приложений.
Традиционно Oracle/Sun Microsystems создавали установщики среды выполнения Java (JRE), которые содержали только виртуальную машину Java, API Java и интеграции с ОС и браузером, с целью обеспечения возможности компьютеров для запуска Java-приложений, скачанных из Интернета, или для запуска апплетов и приложений Java Web Start через браузер.
С появлением современных веб-приложений и браузеров технологии Applets и Java Web Start стали устаревшими, а браузеры больше не поддерживают подключаемые модули Java. Потребность в предварительно установленных средах выполнения Java общего пользования на компьютерах со временем стала менее значительной. В Java 9 API Applet стал устаревшим (см. JEP 289), а в Java 17 API был помечен как подлежащий удалению, то есть он будет удален в одном из будущих выпусков Java.
Еще одним значительным изменением является модульизация Java, а также началось с выпуска Java 9 (см. JSR 376). В рамках этого изменения разработчики теперь могут использовать только что добавленную командную строку в JDK jlink , чтобы создать настраиваемую среду выполнения Java, специально разработанную для удовлетворения потребностей приложений, для развертывания как встроенной встроенной среды выполнения вместе с кодом приложения часто в составе образа контейнера для облачных рабочих нагрузок. или в составе установщиков для приложений на основе графического интерфейса.
Сегодня Minecraft: Java Edition развертывается для миллионов игроков Minecraft с пользовательской средой выполнения Java, внедренной в игру. За веб-службами, такими как LinkedIn, Yammer, Bing и Azure, корпорация Майкрософт также развертывает сотни тысяч виртуальных машин Java (JVM) с использованием этого метода.
Создание пользовательской среды выполнения Java
Чтобы создать среду выполнения Java, необходимо установить JDK 9 или более поздней версии в вашей среде. Сначала скачайте и установите Microsoft Build openJDK.
Определение необходимых модулей с помощью jdeps
Платформа Java теперь сегментируется в модули. Полный список см. в документации по Java 17 . Другие версии Java могут включать новые модули.
Средство JDK jdeps можно использовать для анализа .class файла, каталога или JAR файла, для идентификации зависимостей модуля Java, внутренних зависимостей JDK и других полезных сведений, которые помогут разработчикам создавать среды выполнения Java.
$ cat HelloWorld.java
public class HelloWorld {
public static void main(String args[]) {
System.out.println("Hello World!");
}
}
$ jdeps HelloWorld.class
HelloWorld.class -> java.base
<unnamed> -> java.io java.base
<unnamed> -> java.lang java.base
Средство jdeps указывает, что этот класс зависит только от типов в java.lang и java.io пакетах, поэтому ему нужен только модуль java.base. Аналогичные выходные данные будут созданы для файла JAR в качестве ввода. Список обязательных модулей позволяет создать среду выполнения Java.
Создание среды выполнения Java с помощью jlink
Чтобы создать среду выполнения Java из JDK, необходимо знать, какие модули требуется. Используйте jdeps для их идентификации. Дополнительные сведения о средстве командной jlink строки см. в документации.
Пример:
$ jlink \
--add-modules java.base \
--strip-debug \
--no-man-pages \
--no-header-files \
--compress=2 \
--output ./javaruntime
Теперь можно использовать среду выполнения Java, расположенную в ./javaruntime, чтобы выполнять код приложения, зависящего от модуля java.base. Структура javaruntime папки, созданной с помощью jlink JDK, аналогична структуре каталогов JDK, а java средство командной строки для запуска JVM находится в папке ./bin/ как обычно. Если пользовательская Java-среда выполнения содержит все необходимые модули существующего приложения, на нее можно ссылаться JAVA_HOME.
$ /javaruntime/bin/java HelloWorld
Hello, World!
В приведенном выше примере созданная среда выполнения Java в Windows потребляет около 24 МБ в Windows.
Создание среды выполнения Java с помощью образа контейнера Docker
Вы можете использовать многоэтапные сборки Docker для создания, использования и упаковки пользовательской среды выполнения Java в рамках сборки образа. Узнайте , как создавать среды выполнения Java с помощью Docker.
База знаний
javax.net.ssl.SSLHandshakeException: получено критическое предупреждение: handshake_failure
Сведения об устранении этой проблемы см. в статье " Безопасность и шифрование Java ".
Ресурсы
Предоставление отзывов о Сборке OpenJDK в Microsoft
Отправьте нам свои комментарии, мысли и идеи, чтобы помочь нам улучшить Microsoft Build OpenJDK. Посетите страницу обсуждений OpenJDK на сайте GitHub , чтобы отправить нам свой отзыв.
Java и OpenJDK — это товарные знаки или зарегистрированные товарные знаки Oracle и /или ее филиалов.