Введение
В этом руководстве вы узнаете, как указать основный класс в манифест - файле для исполняемого JAR - файла на Java. По завершении чтения этой статьи вы научитесь правильно настраивать манифест - файл и создавать автономное Java - приложение, которое можно легко запустить.
Понимание исполняемых JAR - файлов
В мире разработки на Java исполняемые JAR - файлы (Java Archive) играют важную роль в упаковке и распространении Java - приложений. Исполняемый JAR - файл представляет собой особый тип JAR - файла, который можно запустить непосредственно из командной строки без необходимости вручную указывать основной класс.
Что такое исполняемый JAR?
Исполняемый JAR - файл - это JAR - файл, который был настроен с использованием специального манифест - файла. Манифест - файл содержит метаданные о JAR - файле, в том числе основной класс, который должен быть выполнен при запуске JAR - файла.
Преимущества исполняемых JAR - файлов
Использование исполняемых JAR - файлов имеет несколько преимуществ:
- Портативность: Исполняемые JAR - файлы можно запускать на любой системе, на которой установлен Java Runtime Environment (JRE), что делает ваше приложение более переносимым.
- Простота: Пользователи могут запустить ваше приложение, просто дважды щелкнув по JAR - файлу или выполнив его из командной строки, не зная конкретного основного класса.
- Распространение: Исполняемые JAR - файлы можно легко распространять и делиться с другими, так как они содержат все необходимые компоненты для запуска приложения.
Структура исполняемого JAR
Исполняемый JAR - файл состоит из следующих ключевых компонентов:
- JAR - файл: Сам JAR - файл, который содержит скомпилированные Java - классы, ресурсы и другие вспомогательные файлы.
- Манифест - файл: Особый файл с именем
MANIFEST.MF, который находится в каталогеMETA - INFJAR - файла. Этот файл содержит метаданные о JAR - файле, в том числе основной класс, который должен быть выполнен.
graph TD
A[Executable JAR File] --> B[JAR File]
A --> C[Manifest File]
B --> D[Compiled Java Classes]
B --> E[Resources]
C --> F[Main-Class Attribute]
Понимая структуру и компоненты исполняемого JAR - файла, вы будете лучше подготовлены к настройке манифест - файла и созданию собственных исполняемых JAR - файлов.
Настройка манифест - файла
Ключом к созданию исполняемого JAR - файла является правильная настройка манифест - файла. Манифест - файл представляет собой особый файл, расположенный в каталоге META - INF JAR - файла, и он содержит метаданные о JAR - файле, в том числе основной класс, который должен быть выполнен.
Структура манифест - файла
Манифест - файл следует определенному формату, при котором каждая запись разделена символом новой строки, а ключ и значение разделяются двоеточием (:). Вот пример простого манифест - файла:
Manifest-Version: 1.0
Main-Class: com.labex.example.Main
В этом примере атрибут Main - Class указывает полное квалифицированное имя основного класса, который должен быть выполнен при запуске JAR - файла.
Настройка манифест - файла
Для настройки манифест - файла вы можете использовать текстовый редактор или инструмент, такой как командная утилита jar. Вот пример того, как создать манифест - файл с использованием команды jar на системе Ubuntu 22.04:
## Create a new directory for the project
mkdir my-project
cd my-project
## Compile the Java classes
javac com/labex/example/Main.java
## Create the manifest file
echo "Main-Class: com.labex.example.Main" > MANIFEST.MF
## Create the JAR file with the manifest
jar cvfm my-app.jar MANIFEST.MF com/
В этом примере мы сначала создаем новый каталог для проекта и компилируем Java - классы. Затем мы создаем манифест - файл с атрибутом Main - Class, установленным на полное квалифицированное имя основного класса. Наконец, мы используем команду jar для создания исполняемого JAR - файла, указывая манифест - файл и скомпилированные Java - классы.
Правильно настроив манифест - файл, вы можете обеспечить возможность запуска вашего JAR - файла и его легкое распространение и запуск пользователями.
Сборка и запуск исполняемого JAR - файла
Теперь, когда вы настроили манифест - файл, вы готовы собрать и запустить исполняемый JAR - файл. Процесс включает в себя компиляцию Java - классов, создание JAR - файла и затем запуск JAR - файла.
Сборка исполняемого JAR - файла
Для сборки исполняемого JAR - файла вы можете использовать командную утилиту jar. Вот пример того, как это сделать на системе Ubuntu 22.04:
## Compile the Java classes
javac com/labex/example/Main.java
## Create the manifest file
echo "Main-Class: com.labex.example.Main" > MANIFEST.MF
## Create the JAR file with the manifest
jar cvfm my-app.jar MANIFEST.MF com/
В этом примере мы сначала компилируем Java - классы, затем создаем манифест - файл с атрибутом Main - Class и, наконец, используем команду jar для создания исполняемого JAR - файла, указывая манифест - файл и скомпилированные Java - классы.
Запуск исполняемого JAR - файла
После того, как вы собрали исполняемый JAR - файл, вы можете запустить его с помощью команды java. Вот пример:
java -jar my-app.jar
Эта команда выполнит основной класс, указанный в манифест - файле, и запустит ваше Java - приложение.
Вы также можете дважды щелкнуть по JAR - файлу в файловом менеджере или использовать команду open на macOS для запуска исполняемого JAR - файла. Операционная система автоматически распознает JAR - файл как исполняемый и запустит Java - приложение.
Следуя этим шагам, вы можете легко собрать и запустить свои собственные исполняемые JAR - файлы, что облегчит распространение и запуск ваших Java - приложений.
Резюме
В этом руководстве по Java вы узнали, как настроить манифест - файл для указания основного класса для исполняемого JAR - файла. Понимая структуру манифест - файла и необходимые шаги для сборки и запуска исполняемого JAR - файла, вы теперь можете создавать автономные Java - приложения, которые можно легко распространять и запускать на различных системах.



