В Java вы можете использовать файл манифеста для определения точки входа приложения, добавив путь к классу или версию пакета для файла JAR. В этом кратком руководстве мы покажем вам, как добавить пользовательский файл манифеста в файл Jar.
1. Структура проекта
Предположим, что это структура папок вашего проекта
/workspace/test/classes/com/mkyong/awt/AwtExample.class /workspace/test/classes/manifest.txt
2. Встряхните Его
Используйте приведенную ниже команду, чтобы создать файл Jar и добавить свой собственный файл манифеста (manifest.txt ) в него.
jar -cvfm example.jar manifest.txt com/mkyong/awt/*.class
Выход
$ jar -cvfm example.jar manifest.txt com/mkyong/awt/*.class added manifest adding: com/mkyong/awt/AwtExample$1.class(in = 638) (out= 388)(deflated 39%) adding: com/mkyong/awt/AwtExample.class(in = 879) (out= 540)(deflated 38%) mkyong@laptop:~/workspace/JavaTips/bin$
3. Сделано
Новый”example.jar “файл jar с пользовательским файлом манифеста.
$ jar tf example.jar META-INF/ META-INF/MANIFEST.MF com/mkyong/awt/AwtExample$1.class com/mkyong/awt/AwtExample.class mkyong@laptop:~/workspace/JavaTips/bin$
Объяснение
опция “m” означает включить ваш пользовательский файл манифеста. Вы всегда должны быть осторожны с порядком параметров, буквы ” m
” и ” f
” должны отображаться в том же порядке, что и ” манифест
” и ” jarfile
“.
Например, Правильное утверждение “fm” должно совпадать с “example.jar manifest.txt “
jar -cvfm example.jar manifest.txt com/mkyong/awt/*.class
“mf” должно совпадать с “manifest.txt example.jar “
jar -cvmf manifest.txt example.jar com/mkyong/awt/*.class
Неверное утверждение
jar -cvfm manifest.txt example.jar com/mkyong/awt/*.class
Это не сработает, система обрабатывает ваш файл манифеста следующим образом”example.jar “, и вызывает ошибку “недопустимое поле заголовка”.
Ссылка
Оригинал: “https://mkyong.com/java/how-to-add-your-manifest-into-a-jar-file/”