<?xml version="1.0" encoding="UTF-8"?> <!-- SPDX-FileCopyrightText: © 2023 Matthias Andreas Benkard <code@mail.matthias.benkard.de> SPDX-License-Identifier: GPL-3.0-or-later --> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <modelVersion>4.0.0</modelVersion> <version>0.1.10</version> <artifactId>jgvariant-tool</artifactId> <packaging>jar</packaging> <name>JGVariant Command Line Tool</name> <url>https://gerrit.benkard.de/plugins/gitiles/jgvariant</url> <description> GVariant command line tool. </description> <parent> <groupId>eu.mulk.jgvariant</groupId> <artifactId>jgvariant-parent</artifactId> <version>0.1.10</version> <relativePath>../jgvariant-parent/pom.xml</relativePath> </parent> <dependencies> <!-- JGVariant --> <dependency> <groupId>eu.mulk.jgvariant</groupId> <artifactId>jgvariant-core</artifactId> <version>0.1.10</version> </dependency> <dependency> <groupId>eu.mulk.jgvariant</groupId> <artifactId>jgvariant-ostree</artifactId> <version>0.1.10</version> </dependency> <!-- Annotations --> <dependency> <groupId>com.google.errorprone</groupId> <artifactId>error_prone_annotations</artifactId> <scope>provided</scope> <optional>true</optional> </dependency> <dependency> <groupId>org.jetbrains</groupId> <artifactId>annotations</artifactId> <scope>provided</scope> <optional>true</optional> </dependency> <dependency> <groupId>org.jspecify</groupId> <artifactId>jspecify</artifactId> <scope>provided</scope> <optional>true</optional> </dependency> <dependency> <groupId>org.apiguardian</groupId> <artifactId>apiguardian-api</artifactId> <scope>provided</scope> <optional>true</optional> </dependency> <!-- Command line tooling --> <dependency> <groupId>info.picocli</groupId> <artifactId>picocli</artifactId> </dependency> <!-- JSON --> <dependency> <groupId>org.eclipse</groupId> <artifactId>yasson</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <annotationProcessorPaths> <path> <groupId>info.picocli</groupId> <artifactId>picocli-codegen</artifactId> <version>${picocli.version}</version> </path> </annotationProcessorPaths> <compilerArgs> <arg>-Aproject=${project.groupId}/${project.artifactId}</arg> </compilerArgs> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>eu.mulk.jgvariant.tool.Main</mainClass> </manifest> <manifestEntries> <Multi-Release>true</Multi-Release> </manifestEntries> </archive> </configuration> </plugin> </plugins> </build> <profiles> <profile> <id>shade</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>uberjar</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <archive> <manifest> <mainClass>eu.mulk.jgvariant.tool.Main</mainClass> </manifest> <manifestEntries> <Multi-Release>true</Multi-Release> </manifestEntries> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>native</id> <build> <plugins> <plugin> <groupId>org.graalvm.buildtools</groupId> <artifactId>native-maven-plugin</artifactId> <extensions>true</extensions> <executions> <execution> <id>build-native</id> <goals> <goal>compile-no-fork</goal> </goals> <phase>package</phase> </execution> <execution> <id>test-native</id> <goals> <goal>test</goal> </goals> <phase>test</phase> </execution> </executions> <configuration> <debug>false</debug> <fallback>false</fallback> <buildArgs> <arg>-O3</arg> <arg>--strict-image-heap</arg> </buildArgs> <imageName>jgvariant</imageName> </configuration> </plugin> </plugins> </build> </profile> <profile> <id>jpackage</id> <build> <plugins> <plugin> <groupId>com.github.akman</groupId> <artifactId>jpackage-maven-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>jpackage</goal> </goals> <configuration> <type>IMAGE</type> <module>eu.mulk.jgvariant.tool/eu.mulk.jgvariant.tool.Main</module> <modulepath> <dependencysets> <dependencyset> <includeoutput>true</includeoutput> <excludeautomatic>true</excludeautomatic> </dependencyset> </dependencysets> </modulepath> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>exec</id> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <executions> <execution> <phase>verify</phase> <goals> <goal>java</goal> </goals> </execution> </executions> <configuration> <mainClass>eu.mulk.jgvariant.tool.Main</mainClass> <arguments/> </configuration> </plugin> </plugins> </build> </profile> </profiles> </project>