blob: bcd0de4955ed2a6986c1936567f8218d84c0993a [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.googlesource.gerrit.plugins</groupId>
<artifactId>ai-code-review</artifactId>
<packaging>jar</packaging>
<version>4.0.0</version>
<properties>
<Gerrit-ApiType>plugin</Gerrit-ApiType>
<!-- Default the gerrit-api version to the lowest version that uses JDK17 by default, the same as this project.
because we can't run on JDK11, but equally we wish to support as many gerrit versions for this plugin as possible, this doesn't mean this wont run
on later versions, it just allows it to be backward compatible back to this min version ( unless we actually need to use a feature from a later API spec -->
<Gerrit-ApiVersion>3.7.9</Gerrit-ApiVersion>
<maven.test.skip>false</maven.test.skip>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<archive>
<manifestEntries>
<Gerrit-PluginName>ai-code-review</Gerrit-PluginName>
<Gerrit-Module>com.googlesource.gerrit.plugins.aicodereview.Module</Gerrit-Module>
<Implementation-Vendor>OpenSource Gerrit Plugin</Implementation-Vendor>
<Implementation-URL>https://gerrit.googlesource.com/plugins/ai-code-review</Implementation-URL>
<Implementation-Title>AI Code Review Gerrit Plugin</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
<Gerrit-ApiType>${Gerrit-ApiType}</Gerrit-ApiType>
<Gerrit-ApiVersion>${Gerrit-ApiVersion}</Gerrit-ApiVersion>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>17</release>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.5.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createDependencyReducedPom>true</createDependencyReducedPom>
<artifactSet>
<includes>
<include>com.squareup.*</include>
<include>org.jetbrains*</include>
</includes>
</artifactSet>
<relocations>
<relocation>
<pattern>okhttp3</pattern>
<shadedPattern>com.googlesource.gerrit.plugins.aicodereview.okhttp3</shadedPattern>
</relocation>
<relocation>
<pattern>okio</pattern>
<shadedPattern>com.googlesource.gerrit.plugins.aicodereview.okio</shadedPattern>
</relocation>
</relocations>
<filters>
<filter>
<!-- Do not include files that should not be shaded -->
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
<exclude>META-INF/*.MF</exclude>
<exclude>META-INF/license/*</exclude>
</excludes>
</filter>
</filters>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Gerrit-PluginName>ai-code-review</Gerrit-PluginName>
<Gerrit-Module>com.googlesource.gerrit.plugins.aicodereview.Module</Gerrit-Module>
<Implementation-Vendor>OpenSource Gerrit Plugin</Implementation-Vendor>
<Implementation-URL>https://gerrit.googlesource.com/plugins/ai-code-review</Implementation-URL>
<Implementation-Title>AI Code Review Gerrit Plugin</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
<Gerrit-ApiType>${Gerrit-ApiType}</Gerrit-ApiType>
<Gerrit-ApiVersion>${Gerrit-ApiVersion}</Gerrit-ApiVersion>
</manifestEntries>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencyManagement>
<dependencies>
<!-- we need to control the bytebuddy being brought in by mockito-inline, to move it
to a version which support JDK21 which starts at 1.14.17+ -->
<dependency>
<groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy</artifactId>
<version>1.14.17</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.gerrit</groupId>
<artifactId>gerrit-${Gerrit-ApiType}-api</artifactId>
<version>${Gerrit-ApiVersion}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.30</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.34</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.11</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-inline</artifactId>
<version>5.2.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.github.tomakehurst</groupId>
<artifactId>wiremock-standalone</artifactId>
<version>2.27.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.1.0</version>
</dependency>
</dependencies>
</project>