Как создать JAR файл
Для удобства распространения приложения, в Java существует такой механизм как JAR (Java Archive) файлы. JAR-файлы используются для архивации и сжатия данных.
Базовый формат команды для создания JAR-файла такой:
jar -cf jar-файл входной-файл(ы)
Сгенерированный JAR-файл будет помещен в текущий каталог.
Рассмотрим ключи и аргументы, использованные в этой команде:
- Ключ
c
показывает, что необходимо создать (create) JAR-файл. - Ключ
f
показывает, что необходимо направить вывод в файл, а не в стандартный поток вывода. jar-файл
- это имя, которое необходимо дать результирующему JAR-файлу. Вы можете использовать любое имя для JAR-файл. По соглашению, имени JAR-файла дается расширение .jar, хотя это и необязательно.- Аргумент
входной-файл(ы)
- список с разделителем пробелом из одного или более файлов, которые вы хотите поместить в ваш JAR-файл. Аргументвходной-файл(ы)
может содержать также символ джокер *. Если любые из входных файлов являются каталогами, содержимое этих каталогов рекурсивно добавляется в архив JAR.
Правила относительно структуры JAR-файла.
- Команда
jar
автоматически создаст META-INF каталог. - Команда
jar
автоматически создаст MANIFEST.MF и поместит его в META-INF каталог. - Сохраняется точная структура каталогов.
- Команды
java
иjavac
могут использовать JAR-файл как нормальное дерево каталогов. - Поиск JAR-файлов с помощью ключа
-cp
аналогичен поиску пакетных файлов. Единственная разница - путь к JAR-файлу должен содержать имя JAR-файла (например classes/project1.jar).
Рассмотрим на примере как создаются и используются JAR файлы.
Допустим, что наше приложение имеет следующую структуру каталогов:
Создадим JAR-файл project1.jar, который будет содержать пакеты first
и second
:
cd project1/classes
jar –cf project1.jar first second
Можем просмотреть содержимое project1.jar файла с помощью следующей команды:
jar -tf project1.jar
Результат выполнения будет приблизительно такой:
META-INF/
META-INF/MANIFEST.MF
first/
first/Example1.class
second/
second/Example2.class
Перенесем созданный project1.jar файл в каталог lib и запустим на выполнение программу first.Example
:
cd lib
java -cp project1.jar first.Example1
Презентацию с видео можно скачать на Patreon.
Зарегистрируйтесь или войдите, чтобы иметь возможность оставить комментарий.