Примеры Java Archive Tool (JAR)
Вот структура проекта.
/workspace/test/classes/com/example/awt/AwtExample.class /workspace/test/classes/com/example/awt/AwtExample2.class /workspace/test/classes/com/example/awt/AwtExample3.class /workspace/test/classes/manifest.txt
P.S Assume you are in “/workspace/test/classes/
“
1. Создать файл JAR
-c создать новый архив
-v генерировать подробный вывод в стандартном выводе
-f указать имя файла архива
1.1 Create a Jar file which include AwtExample.class
only.
jar -cvf test.jar com/example/awt/AwtExample.class
1.2 Create a Jar file which include AwtExample.class
and AwtExample1.class
.
jar -cvf test.jar com/example/awt/AwtExample.class com/example/awt/AwtExample1.class
1.3 Create a Jar file which include the all classes
jar -cvf test.jar com/example/awt/*.class
2. Обновить файл JAR
-u обновить существующий архив
2.1 Update test.jar
by adding a new class AwtExample3.class
jar -uvf test.jar com/example/awt/AwtExample3.class
3. Извлеките файл фляги
-x извлечь из архива названный (или весь) файл
s
3.1 Extract all files from test.jar
to current location.
jar -xvf test.jar
3.2 Extract only AwtExample.class
.
jar -xvf test.jar com/example/awt/AwtExample.class
3.3 Extract all files from “com” folder only.
jar -xvf test.jar com
3.4 Extract all files to another folder. Oppss..jar не имеет возможности напрямую извлекать файлы в другую папку. Лучшее меняется на предпочитаемую вами папку и извлекайте ее оттуда.
mkdir newdir cd newdir jar -xvf /workspace/test/classes/test.jar
4. Список файлов из файла JAR
-t список оглавления для архива
4.1 List all files.
jar -tf test.jar
5. Добавить манифест в файл jar
Прочтите эту ссылкуmanifest, вы можете использовать этот файл манифеста для определения точки входа приложения, добавления пути к классам или версии пакета.
-m включить информацию манифеста из указанного файла манифеста
Обычный вариант использования - создание исполняемого файла Java или исполняемого файла JAR.
5.1 Add “Main-Class” and entry point in your manifest file
Main-Class: com.example.awt.AwtExample
Джар их всех
jar -cvfm AwtExample.jar manifest.txt com/example/awt/*.class
P.S More detail…