Giriş
jar veya executable jar oluşturmak içindir. jar oluştururken manifest dosyasını tanımlamaya da izin verir
Goals
help
jar
test-jar
jar Goal
Örnek
Taglerin açıklaması şöyle.
Eski projelerde şöyle yaparız. useDefaultManifestFile artık kullanılmıyor.
manifest dosyasında Main-Class satırını eklemek için şöyle yaparız.
manifest dosyasında Class-Path ve Main-Class satırını eklemek için şöyle yaparız.
Örnek
Şöyle yaparız.
test-jar GoalÖrnek
Taglerin açıklaması şöyle.
-archive: generate manifest file, define in manifest all dependencies from the lib folder and what is the main class so you can run the application also with "java -jar"Şöyle yaparız.
- excludes: don't include the log4j2.xml file in the module jar because will be in config folder available at runtime from outside jar.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>test.LeanFTest</mainClass>
</manifest>
</archive>
<excludes>
<exclude>log4j2.xml</exclude>
</excludes>
</configuration>
</plugin>
ÖrnekEski projelerde şöyle yaparız. useDefaultManifestFile artık kullanılmıyor.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<useDefaultManifestFile>true</useDefaultManifestFile>
</configuration>
</plugin>
Manifest Dosyası Tanımlama Örnekleri
Örnekmanifest dosyasında Main-Class satırını eklemek için şöyle yaparız.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>hello.Application</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Örnekmanifest dosyasında Class-Path ve Main-Class satırını eklemek için şöyle yaparız.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<configuration>
<archive>
<index>true</index>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.client.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Hazır Manifest Dosyası Belirtme Örnekleri
Örnek
Şöyle yaparız
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>3.2.0</version><configuration><archive><manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile></archive></configuration></plugin>
Şöyle yaparız.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<archive>
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
...
</plugin>
Örnek
Şöyle yaparız. Test sınıflarını alarak jar halinde paketler
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
<configuration>
<excludes>
<exclude>**/*.serialization.compatibility.binary</exclude>
</excludes>
</configuration>
</execution>
</executions>
</plugin>
Hiç yorum yok:
Yorum Gönder