| <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>net.glowstone</groupId> |
| <artifactId>glowstone</artifactId> |
| <packaging>jar</packaging> |
| <version>2021.7.0-SNAPSHOT</version> |
| <name>Glowstone</name> |
| <url>https://www.glowstone.net</url> |
| <description>A fast, customizable and compatible open source Minecraft server.</description> |
| |
| <properties> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <api.version>1.12.2-R6.0-SNAPSHOT</api.version> |
| <linkstone.version>1.0.0-SNAPSHOT</linkstone.version> |
| <minecraft.version>1.12.2</minecraft.version> |
| <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format> |
| <maven.compiler.source>1.8</maven.compiler.source> |
| <maven.compiler.target>1.8</maven.compiler.target> |
| <kotlin.version>1.5.10</kotlin.version> |
| <lombok.version>1.18.20</lombok.version> |
| <powermock.version>2.0.9</powermock.version> |
| <junit.jupiter.version>5.7.2</junit.jupiter.version> |
| <junit.vintage.version>5.7.2</junit.vintage.version> |
| </properties> |
| |
| <repositories> |
| <repository> |
| <id>glowstone-internal</id> |
| <url>https://repo.glowstone.net/repository/maven-public/</url> |
| </repository> |
| <repository> |
| <id>glowstone-snapshots</id> |
| <url>https://repo.glowstone.net/repository/snapshots/</url> |
| </repository> |
| </repositories> |
| |
| <distributionManagement> |
| <repository> |
| <id>glowstone-upstream</id> |
| <url>https://repo.glowstone.net/content/repositories/releases/</url> |
| </repository> |
| <snapshotRepository> |
| <id>glowstone-upstream</id> |
| <url>https://repo.glowstone.net/content/repositories/snapshots/</url> |
| </snapshotRepository> |
| </distributionManagement> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-jdk14</artifactId> |
| <version>1.7.25</version> |
| <scope>runtime</scope> |
| </dependency> |
| <dependency> |
| <groupId>net.glowstone</groupId> |
| <artifactId>linkstone-annotations</artifactId> |
| <version>${linkstone.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>net.glowstone</groupId> |
| <artifactId>linkstone-runtime</artifactId> |
| <version>${linkstone.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>net.glowstone</groupId> |
| <artifactId>glowkit</artifactId> |
| <version>${api.version}</version> |
| <scope>compile</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.fusesource.jansi</groupId> |
| <artifactId>jansi</artifactId> |
| <version>2.3.3</version> |
| </dependency> |
| <dependency> |
| <groupId>jline</groupId> |
| <artifactId>jline</artifactId> |
| <version>2.14.6</version> |
| </dependency> |
| <dependency> |
| <groupId>co.aikar</groupId> |
| <artifactId>fastutil-lite</artifactId> |
| <version>1.0</version> |
| </dependency> |
| <dependency> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok</artifactId> |
| <version>${lombok.version}</version> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.flowpowered</groupId> |
| <artifactId>flow-network</artifactId> |
| <version>1.2.10-SNAPSHOT</version> |
| </dependency> |
| <dependency> |
| <groupId>com.eatthepath</groupId> |
| <artifactId>fast-uuid</artifactId> |
| <version>0.1</version> |
| </dependency> |
| <!-- NonNls annotation: https://mvnrepository.com/artifact/org.jetbrains/annotations --> |
| <dependency> |
| <groupId>org.jetbrains</groupId> |
| <artifactId>annotations</artifactId> |
| <version>21.0.1</version> |
| <scope>provided</scope> |
| </dependency> |
| <!-- Kotlin --> |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-stdlib</artifactId> |
| <version>${kotlin.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-reflect</artifactId> |
| <version>${kotlin.version}</version> |
| </dependency> |
| <!-- OpenCL --> |
| <dependency> |
| <groupId>org.jogamp.gluegen</groupId> |
| <artifactId>gluegen-rt-main</artifactId> |
| <version>2.3.2</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jogamp.jocl</groupId> |
| <artifactId>jocl-main</artifactId> |
| <version>2.3.2</version> |
| </dependency> |
| <!-- Maven stuff --> |
| <dependency> |
| <groupId>com.tobedevoured.naether</groupId> |
| <artifactId>core</artifactId> |
| <version>0.15.8</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-simple</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.maven</groupId> |
| <artifactId>maven-artifact</artifactId> |
| <version>3.8.1</version> |
| </dependency> |
| <!-- Tests --> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>4.13.1</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.vintage</groupId> |
| <artifactId>junit-vintage-engine</artifactId> |
| <version>${junit.vintage.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-api</artifactId> |
| <version>${junit.jupiter.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-params</artifactId> |
| <version>${junit.jupiter.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-engine</artifactId> |
| <version>${junit.jupiter.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest</artifactId> |
| <version>2.2</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.powermock</groupId> |
| <artifactId>powermock-core</artifactId> |
| <version>${powermock.version}</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> |
| </dependencies> |
| |
| <build> |
| <finalName>glowstone</finalName> |
| |
| <directory>${project.basedir}/target</directory> |
| |
| <resources> |
| <resource> |
| <directory>${project.basedir}/src/main/resources</directory> |
| </resource> |
| </resources> |
| |
| <defaultGoal>package</defaultGoal> |
| |
| <plugins> |
| <plugin> |
| <groupId>net.md-5</groupId> |
| <artifactId>scriptus</artifactId> |
| <version>0.4.1</version> |
| <configuration> |
| <format>%s</format> |
| </configuration> |
| <executions> |
| <execution> |
| <phase>initialize</phase> |
| <goals> |
| <goal>describe</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>3.1.2</version> |
| <dependencies> |
| <dependency> |
| <groupId>com.puppycrawl.tools</groupId> |
| <artifactId>checkstyle</artifactId> |
| <version>8.44</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <phase>compile</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <configLocation>${project.basedir}/etc/checkstyle.xml</configLocation> |
| <headerLocation>${project.basedir}/LICENSE</headerLocation> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>animal-sniffer-maven-plugin</artifactId> |
| <version>1.20</version> |
| <executions> |
| <execution> |
| <phase>process-classes</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <signature> |
| <groupId>org.codehaus.mojo.signature</groupId> |
| <artifactId>java18</artifactId> |
| <version>1.0</version> |
| </signature> |
| <ignores> |
| <ignore>java.lang.invoke.MethodHandle</ignore> |
| </ignores> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-shade-plugin</artifactId> |
| <version>3.2.3</version> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>shade</goal> |
| </goals> |
| <configuration> |
| <relocations> |
| <relocation> |
| <pattern>jline</pattern> |
| <shadedPattern>org.bukkit.craftbukkit.libs.jline</shadedPattern> |
| </relocation> |
| <relocation> |
| <pattern>it.unimi</pattern> |
| <shadedPattern>org.bukkit.craftbukkit.libs.it.unimi</shadedPattern> |
| </relocation> |
| </relocations> |
| <filters> |
| <filter> |
| <artifact>*:*</artifact> |
| <excludes> |
| <exclude>mojang-translations/*</exclude> |
| </excludes> |
| </filter> |
| </filters> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>3.2.0</version> |
| <configuration> |
| <forceCreation>true</forceCreation> |
| <archive> |
| <manifestEntries> |
| <Launcher-Agent-Class>net.glowstone.util.ClassPathAgent</Launcher-Agent-Class> |
| <Main-Class>net.glowstone.GlowServer</Main-Class> |
| <Implementation-Title>${project.name}</Implementation-Title> |
| <!--suppress UnresolvedMavenProperty --> |
| <Implementation-Version>${project.version}.${describe}</Implementation-Version> |
| <Implementation-Vendor>${maven.build.timestamp}</Implementation-Vendor> |
| <Specification-Title>Bukkit</Specification-Title> |
| <Specification-Version>${api.version}</Specification-Version> |
| </manifestEntries> |
| </archive> |
| </configuration> |
| </plugin> |
| <plugin> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>3.0.0-M4</version> |
| <executions> |
| <execution> |
| <id>default-test</id> |
| <phase>test</phase> |
| <goals> |
| <goal>test</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <failIfNoTests>true</failIfNoTests> |
| <trimStackTrace>false</trimStackTrace> |
| <forkCount>1</forkCount> |
| <reuseForks>true</reuseForks> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.8.1</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-resources-plugin</artifactId> |
| <version>3.2.0</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-deploy-plugin</artifactId> |
| <version>3.0.0-M1</version> |
| </plugin> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>0.8.7</version> |
| <configuration> |
| <excludes> |
| <exclude>META-INF/versions/**</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>pre-unit-test</id> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>post-unit-test</id> |
| <phase>test</phase> |
| <goals> |
| <goal>report</goal> |
| <goal>check</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <rule> |
| <element>BUNDLE</element> |
| <limits> |
| <limit implementation="org.jacoco.report.check.Limit"> |
| <counter>INSTRUCTION</counter> |
| <value>COVEREDRATIO</value> |
| <minimum>0.01</minimum> |
| </limit> |
| <limit> |
| <counter>COMPLEXITY</counter> |
| <value>COVEREDRATIO</value> |
| <minimum>0.01</minimum> |
| </limit> |
| </limits> |
| </rule> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-maven-plugin</artifactId> |
| <version>${kotlin.version}</version> |
| <executions> |
| <execution> |
| <id>compile</id> |
| <phase>process-sources</phase> |
| <goals> |
| <goal>compile</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <profiles> |
| <profile> |
| <id>build-extras</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok-maven-plugin</artifactId> |
| <version>${lombok.version}.0</version> |
| <executions> |
| <execution> |
| <id>delombok</id> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>delombok</goal> |
| </goals> |
| <configuration> |
| <addOutputDirectory>false</addOutputDirectory> |
| <sourceDirectory>src/main/java</sourceDirectory> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>3.3.0</version> |
| <configuration> |
| <defaultVersion>${project.version}</defaultVersion> |
| <sourcepath>target/generated-sources/delombok</sourcepath> |
| </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.2.1</version> |
| <executions> |
| <execution> |
| <id>attach-sources</id> |
| <goals><goal>jar-no-fork</goal></goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <reporting> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-report-plugin</artifactId> |
| <version>3.0.0-M5</version> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>3.1.2</version> |
| <configuration> |
| <configLocation>${project.basedir}/etc/checkstyle.xml</configLocation> |
| <headerLocation>${project.basedir}/LICENSE</headerLocation> |
| </configuration> |
| </plugin> |
| </plugins> |
| </reporting> |
| </project> |