mirror of
https://github.com/BentoBoxWorld/Challenges.git
synced 2024-11-28 13:36:06 +01:00
407 lines
16 KiB
XML
407 lines
16 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<groupId>world.bentobox</groupId>
|
|
<artifactId>challenges</artifactId>
|
|
<version>${revision}</version>
|
|
|
|
<name>Challenges</name>
|
|
<description>Challenges is an add-on for BentoBox, an expandable Minecraft Bukkit plugin for island-type games like SkyBlock, AcidIsland or CaveBlock.</description>
|
|
<url>https://github.com/BentoBoxWorld/Challenges</url>
|
|
<inceptionYear>2018</inceptionYear>
|
|
|
|
<scm>
|
|
<connection>scm:git:https://github.com/BentoBoxWorld/Challenges.git</connection>
|
|
<developerConnection>scm:git:git@github.com:BentoBoxWorld/Challenges.git</developerConnection>
|
|
<url>https://github.com/BentoBoxWorld/Challenges</url>
|
|
</scm>
|
|
|
|
<ciManagement>
|
|
<system>jenkins</system>
|
|
<url>http://ci.codemc.org/job/BentoBoxWorld/job/Challenges</url>
|
|
</ciManagement>
|
|
|
|
<issueManagement>
|
|
<system>GitHub</system>
|
|
<url>https://github.com/BentoBoxWorld/Challenges/issues</url>
|
|
</issueManagement>
|
|
|
|
<properties>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
<java.version>21</java.version>
|
|
<powermock.version>2.0.9</powermock.version>
|
|
<!-- More visible way how to change dependency versions -->
|
|
<spigot.version>1.21-R0.1-SNAPSHOT</spigot.version>
|
|
<spigot-annotations.version>1.2.3-SNAPSHOT</spigot-annotations.version>
|
|
<bentobox.version>2.4.2</bentobox.version>
|
|
<level.version>2.6.3</level.version>
|
|
<vault.version>1.7</vault.version>
|
|
<panelutils.version>1.2.0</panelutils.version>
|
|
<!-- Revision variable removes warning about dynamic version -->
|
|
<revision>${build.version}-SNAPSHOT</revision>
|
|
<!-- This allows to change between versions and snapshots. -->
|
|
<build.version>1.3.2</build.version>
|
|
<build.number>-LOCAL</build.number>
|
|
<!-- Sonar Cloud -->
|
|
<sonar.projectKey>BentoBoxWorld_Challenges</sonar.projectKey>
|
|
<sonar.organization>bentobox-world</sonar.organization>
|
|
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
|
|
</properties>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>ci</id>
|
|
<activation>
|
|
<property>
|
|
<name>env.BUILD_NUMBER</name>
|
|
</property>
|
|
</activation>
|
|
<properties>
|
|
<!-- Override only if necessary -->
|
|
<build.number>-b${env.BUILD_NUMBER}</build.number>
|
|
<!-- GIT_BRANCH -->
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>master</id>
|
|
<activation>
|
|
<property>
|
|
<name>env.GIT_BRANCH</name>
|
|
<value>origin/master</value>
|
|
</property>
|
|
</activation>
|
|
<properties>
|
|
<!-- Override only if necessary -->
|
|
<revision>${build.version}</revision>
|
|
<!-- Empties build number variable. -->
|
|
<build.number></build.number>
|
|
</properties>
|
|
</profile>
|
|
</profiles>
|
|
|
|
<distributionManagement>
|
|
<snapshotRepository>
|
|
<id>codemc-snapshots</id>
|
|
<url>https://repo.codemc.org/repository/maven-snapshots</url>
|
|
</snapshotRepository>
|
|
<repository>
|
|
<id>codemc-releases</id>
|
|
<url>https://repo.codemc.org/repository/maven-releases</url>
|
|
</repository>
|
|
</distributionManagement>
|
|
|
|
<pluginRepositories>
|
|
<pluginRepository>
|
|
<id>apache.snapshots</id>
|
|
<url>https://repository.apache.org/snapshots/</url>
|
|
</pluginRepository>
|
|
</pluginRepositories>
|
|
|
|
<repositories>
|
|
<!-- Spigot Repo -->
|
|
<repository>
|
|
<id>spigot-repo</id>
|
|
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots</url>
|
|
</repository>
|
|
<!-- CodeMC Repo for BentoBox -->
|
|
<repository>
|
|
<id>codemc-repo</id>
|
|
<url>https://repo.codemc.io/repository/maven-public</url>
|
|
</repository>
|
|
<!-- Minecraft Lib Repo -->
|
|
<repository>
|
|
<id>minecraft-repo</id>
|
|
<url>https://libraries.minecraft.net/</url>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<dependencies>
|
|
<!-- This is required for PowerMockito to work and must be placed before it -->
|
|
<dependency>
|
|
<groupId>org.javassist</groupId>
|
|
<artifactId>javassist</artifactId>
|
|
<version>3.30.2-GA</version>
|
|
</dependency>
|
|
<!-- Spigot API -->
|
|
<dependency>
|
|
<groupId>org.spigotmc</groupId>
|
|
<artifactId>spigot-api</artifactId>
|
|
<version>${spigot.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<!-- Vault API -->
|
|
<dependency>
|
|
<groupId>net.milkbowl.vault</groupId>
|
|
<artifactId>VaultAPI</artifactId>
|
|
<version>${vault.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<!-- BentoBox dependencies. -->
|
|
<dependency>
|
|
<groupId>world.bentobox</groupId>
|
|
<artifactId>bentobox</artifactId>
|
|
<version>${bentobox.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>world.bentobox</groupId>
|
|
<artifactId>level</artifactId>
|
|
<version>${level.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<!-- PanelUtils -->
|
|
<dependency>
|
|
<groupId>lv.id.bonne</groupId>
|
|
<artifactId>panelutils</artifactId>
|
|
<version>${panelutils.version}</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<!-- Annotations -->
|
|
<dependency>
|
|
<groupId>org.jetbrains</groupId>
|
|
<artifactId>annotations</artifactId>
|
|
<version>22.0.0</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<!-- Mockito (Unit testing) -->
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>3.11.2</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.powermock</groupId>
|
|
<artifactId>powermock-module-junit4</artifactId>
|
|
<version>${powermock.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.powermock</groupId>
|
|
<artifactId>powermock-api-mockito2</artifactId>
|
|
<version>${powermock.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<!-- Mojang Auth -->
|
|
<dependency>
|
|
<groupId>com.mojang</groupId>
|
|
<artifactId>authlib</artifactId>
|
|
<version>1.5.21</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-math3</artifactId>
|
|
<version>3.6.1</version>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<!-- By default ${revision} is ${build.version}-SNAPSHOT -->
|
|
<!-- If GIT_BRANCH variable is set to origin/master, then it will
|
|
be only ${build.version}. -->
|
|
|
|
<!-- By default ${build.number} is -LOCAL. -->
|
|
<!-- If the BUILD_NUMBER variable is set, then it will be -b[number]. -->
|
|
<!-- If GIT_BRANCH variable is set to origin/master, then it will
|
|
be the empty string. -->
|
|
<finalName>${project.name}-${revision}${build.number}</finalName>
|
|
|
|
<defaultGoal>clean package</defaultGoal>
|
|
<resources>
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
<filtering>true</filtering>
|
|
</resource>
|
|
<resource>
|
|
<directory>src/main/resources/locales</directory>
|
|
<targetPath>./locales</targetPath>
|
|
<filtering>false</filtering>
|
|
<includes>
|
|
<include>*.yml</include>
|
|
<include>*.json</include>
|
|
</includes>
|
|
</resource>
|
|
</resources>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<version>3.6.0</version>
|
|
<configuration>
|
|
<minimizeJar>true</minimizeJar>
|
|
<artifactSet>
|
|
<includes>
|
|
<include>lv.id.bonne:panelutils:*</include>
|
|
</includes>
|
|
</artifactSet>
|
|
<transformers>
|
|
<!-- Add a transformer to exclude any other manifest files (possibly from dependencies). -->
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
|
|
<resource>MANIFEST.MF</resource>
|
|
</transformer>
|
|
<!-- Add a transformer to include your custom manifest file. -->
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
|
|
<resource>META-INF/MANIFEST.MF</resource>
|
|
<file>src/main/resources/META-INF/MANIFEST.MF</file>
|
|
</transformer>
|
|
</transformers>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-clean-plugin</artifactId>
|
|
<version>3.1.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>3.1.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.7.0</version>
|
|
<configuration>
|
|
<source>${java.version}</source>
|
|
<target>${java.version}</target>
|
|
<release>${java.version}</release>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.0.0-M5</version>
|
|
<configuration>
|
|
<argLine>
|
|
${argLine}
|
|
--add-opens java.base/java.lang=ALL-UNNAMED
|
|
--add-opens java.base/java.math=ALL-UNNAMED
|
|
--add-opens java.base/java.io=ALL-UNNAMED
|
|
--add-opens java.base/java.util=ALL-UNNAMED
|
|
--add-opens
|
|
java.base/java.util.stream=ALL-UNNAMED
|
|
--add-opens java.base/java.text=ALL-UNNAMED
|
|
--add-opens
|
|
java.base/java.util.regex=ALL-UNNAMED
|
|
--add-opens
|
|
java.base/java.nio.channels.spi=ALL-UNNAMED
|
|
--add-opens java.base/sun.nio.ch=ALL-UNNAMED
|
|
--add-opens java.base/java.net=ALL-UNNAMED
|
|
--add-opens
|
|
java.base/java.util.concurrent=ALL-UNNAMED
|
|
--add-opens java.base/sun.nio.fs=ALL-UNNAMED
|
|
--add-opens java.base/sun.nio.cs=ALL-UNNAMED
|
|
--add-opens java.base/java.nio.file=ALL-UNNAMED
|
|
--add-opens
|
|
java.base/java.nio.charset=ALL-UNNAMED
|
|
--add-opens
|
|
java.base/java.lang.reflect=ALL-UNNAMED
|
|
--add-opens
|
|
java.logging/java.util.logging=ALL-UNNAMED
|
|
--add-opens java.base/java.lang.ref=ALL-UNNAMED
|
|
--add-opens java.base/java.util.jar=ALL-UNNAMED
|
|
--add-opens java.base/java.util.zip=ALL-UNNAMED
|
|
</argLine>
|
|
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>3.2.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>3.1.1</version>
|
|
<configuration>
|
|
<show>public</show>
|
|
<failOnError>false</failOnError>
|
|
<additionalJOption>-Xdoclint:none</additionalJOption>
|
|
<javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-javadocs</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>3.0.1</version>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-sources</id>
|
|
<goals>
|
|
<goal>jar-no-fork</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-install-plugin</artifactId>
|
|
<version>2.5.2</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-deploy-plugin</artifactId>
|
|
<version>2.8.2</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>0.8.10</version>
|
|
<configuration>
|
|
<append>true</append>
|
|
<excludes>
|
|
<!-- This is required to prevent Jacoco from adding
|
|
synthetic fields to a JavaBean class (causes errors in testing) -->
|
|
<exclude>**/*Names*</exclude>
|
|
<!-- Prevents the Material is too large to mock error -->
|
|
<exclude>org/bukkit/Material*</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>prepare-agent</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>report</id>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
<configuration>
|
|
<formats>
|
|
<format>XML</format>
|
|
</formats>
|
|
</configuration>
|
|
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
</project>
|