Этот туториал покажет вам, как использовать плагин maven-jar
для создания файла манифеста и упаковки/добавления его в конечный файл jar. Файл манифеста обычно используется для определения следующих задач:
- Определите точку входа приложения, сделайте Jar исполняемым.
- Добавьте путь к классу зависимостей проекта.
Когда вы запускаете команду mvn package
для упаковки проекта в Jar, следующий файл meta-inf/manifest.mf
будет сгенерирован и автоматически добавлен в конечный файл Jar.
Manifest-Version: 1.0 Built-By: ${user.name} Build-Jdk: ${java.version} Created-By: Apache Maven Archiver-Version: Plexus Archiver
1. Сделайте Jar исполняемым
Определите maven-jar-плагин
в pom.xml
, и настройте файл манифеста с помощью тега конфигурации.
org.apache.maven.plugins maven-jar-plugin 2.4 com.mkyong.core.App
Будет создан следующий файл манифеста. Если вы запустите эту банку, она выполнит com.mkyong.core. Приложение
.
anifest-Version: 1.0 Built-By: mkyong Build-Jdk: 1.6.0_35 Created-By: Apache Maven Main-Class: com.mkyong.core.App Archiver-Version: Plexus Archiver
2. Добавьте путь к классу зависимостей проекта.
Большинству проектов Java нужна зависимость, и ее можно легко определить в файле манифеста. Обычно вы будете использовать плагин maven-dependency-plugin
для копирования зависимостей проекта в другое место.
org.apache.maven.plugins maven-jar-plugin 2.4 true com.mkyong.core.App dependency-jars/ org.apache.maven.plugins maven-dependency-plugin 2.5.1 copy-dependencies package copy-dependencies ${project.build.directory}/dependency-jars/
Будет создан следующий файл манифеста. Зависимости проекта будут скопированы в {проект}/цель/банки зависимостей/
.
manifest-Version: 1.0 Built-By: mkyong Build-Jdk: 1.6.0_35 Class-Path: dependency-jars/log4j-1.2.17.jar Created-By: Apache Maven Main-Class: com.mkyong.core.App Archiver-Version: Plexus Archiver
Скачать Исходный Код
Рекомендации
Оригинал: “https://mkyong.com/maven/how-to-create-a-manifest-file-with-maven/”