Java#
Интерпретатор Java — это инструмент для загрузки и преобразования байт-кода, созданного компилятором Java (javac), в машинные инструкции для выполнения Java-программ.
Основные функции интерпретатора Java:
Запуск программ: интерпретатор считывает байт-код программы и исполняет его на JVM (Java Virtual Machine), обеспечивая выполнение всех инструкций, включая работу с памятью, управление потоками и обработку исключений.
Оптимизация кода: в процессе выполнения интерпретатор может оптимизировать код для повышения производительности. Например, часто выполняемые участки кода могут быть преобразованы в машинный код через процесс Just-In-Time-компиляции (JIT).
Управление ресурсами: интерпретатор контролирует выделение памяти, отслеживает ее утечки и запускает сборщик мусора (Garbage Collector) для освобождения неиспользуемых ресурсов.
Обеспечение безопасности: интерпретатор контролирует доступ к системным ресурсам и ограничивает возможности программы в соответствии с политикой безопасности JVM.
Установка
Интерпретатор Java устанавливается с помощью команды dnf install. Подробнее про работу пакетного менеджера DNF в разделе «Управление программными пакетами: установка, обновление, удаление».
Примечание
В поставку ОС Platform V SberLinux OS Server входят следующие версии Java:
Java 17;
Java 21.
Желаемая версия Java указывается при установке.
Использование интерпретатора#
Для работы с интерпретатором используйте синтаксис:
java <options> <class> <arguments>
Или:
java <options> -jar <file> <arguments>
Где:
<options>— опции;<class>— имя класса, содержащего методmain(), который является точкой входа в программу. Указывается без расширения.class;<file>— имя вызываемогоjar-файла. Используется совместно с опцией-jar;<arguments>— аргументы.
Опции#
Часто используемые опции интерпретатора представлены в таблице ниже.
Опция |
Описание |
|---|---|
|
Выбрать виртуальную машину Java HotSpot Client. Это значение по умолчанию |
|
Выбрать виртуальную машину Java HotSpot Server |
|
Указать список директорий, архивов JAR и ZIP для поиска файлов классов |
|
Запустить отладчик |
|
Установить значение системного свойства |
|
Выполнить программу, находящуюся в архиве JAR |
|
Отключить сборку мусора для классов |
|
Задать начальный размер пула выделения памяти (heap) в байтах |
|
Установить максимальный размер пула выделения памяти в байтах. Это значение должно быть больше |
|
Установить максимальный размер стека в байтах, который может использовать код на языке C в потоке |
|
Отобразить информацию обо всех загруженных классах |
|
Отобразить информацию о каждом загруженном классе |
|
Отобразить информацию о каждом событии сборки мусора |
|
Отобразить информацию об использовании собственных методов и другой активности Java Native Interface (JNI) |
|
Отобразить информацию о версии |
|
Вывести справку по интерпретатору |
|
Вывести информацию о нестандартных опциях |
Примеры использования#
Запуск программы из файла
MyApp.jarс указанием начального размера heap, равным 512 Мб:java -Xms512m -jar MyApp.jarЗапуск программы из файла
MyProgram.jarс выводом расширенной информацией о сборке мусора:java -verbose:gc -jar MyProgram.jarПросмотр информации о версии Java:
java -version
Дополнительная информация#
Дополнительную информацию можно получить, выполнив команду:
man java
Или:
java -help