dice
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.bernardomg.tabletop</groupId>
<artifactId>dice</artifactId>
<version>2.2.6</version>
</dependency><?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>
<!-- ********************************************** -->
<!-- ****************** BASE POM ****************** -->
<!-- ********************************************** -->
<parent>
<groupId>com.bernardomg.maven</groupId>
<artifactId>base-pom</artifactId>
<version>1.5.11</version>
</parent>
<!-- ********************************************** -->
<!-- **************** PROJECT INFO **************** -->
<!-- ********************************************** -->
<groupId>com.bernardomg.tabletop</groupId>
<artifactId>dice</artifactId>
<version>2.2.6</version>
<packaging>jar</packaging>
<name>Dice Notation Tools for Java</name>
<description>Utilities for representing and handling dice and dice notation.</description>
<url>https://github.com/bernardo-mg/dice-notation-java</url>
<inceptionYear>2014</inceptionYear>
<licenses>
<license>
<name>Apache v2 License</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<!-- ********************************************** -->
<!-- ********* INFRASTRUCTURE AND SERVICES ******** -->
<!-- ********************************************** -->
<scm>
<connection>scm:git:https://github.com/bernardo-mg/dice-notation-java.git</connection>
<developerConnection>scm:git:https://github.com/bernardo-mg/dice-notation-java.git</developerConnection>
<tag>head</tag>
<url>https://github.com/bernardo-mg/dice-notation-java</url>
</scm>
<issueManagement>
<system>GitHub Issues</system>
<url>https://github.com/bernardo-mg/dice-notation-java/issues</url>
</issueManagement>
<ciManagement>
<system>Github workflow</system>
<url>https://github.com/bernardo-mg/dice-notation-java/actions</url>
<notifiers />
</ciManagement>
<!-- ********************************************** -->
<!-- ****************** PROFILES ****************** -->
<!-- ********************************************** -->
<profiles>
<!-- ============================================== -->
<!-- ============ DEPLOYMENT PROFILES ============= -->
<!-- ============================================== -->
<profile>
<!-- Github deployment profile. -->
<id>deployment-github</id>
<distributionManagement>
<repository>
<!-- Github repository -->
<id>github</id>
<name>GitHub Packages</name>
<url>https://maven.pkg.github.com/bernardo-mg/java-validation</url>
</repository>
</distributionManagement>
</profile>
<profile>
<!-- Central deployment profile. -->
<id>deployment-central</id>
<build>
<plugins>
<plugin>
<!-- GPG -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- Prevent gpg from using pinentry programs -->
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</plugin>
<plugin>
<!-- Maven Central publishing -->
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<autoPublish>true</autoPublish>
<waitUntil>published</waitUntil>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<!-- ********************************************** -->
<!-- *********** ORGANIZATION AND MEMBERS ********* -->
<!-- ********************************************** -->
<organization>
<name>Bernardo Martínez Garrido</name>
<url>https://github.com/bernardo-mg</url>
</organization>
<developers>
<developer>
<id>bmg</id>
<name>Bernardo Martínez Garrido</name>
<email>programming@bernardomg.com</email>
<url>https://github.com/bernardo-mg</url>
<organization>Bernardo Martínez Garrido</organization>
<organizationUrl>https://github.com/bernardo-mg</organizationUrl>
<roles>
<role>Developer</role>
</roles>
<timezone>+1</timezone>
<properties />
</developer>
</developers>
<!-- ********************************************** -->
<!-- **************** PROPERTIES ****************** -->
<!-- ********************************************** -->
<properties>
<!-- ============================================== -->
<!-- =============== MAVEN VERSION ================ -->
<!-- ============================================== -->
<maven.version>3.8</maven.version>
<!-- ============================================== -->
<!-- =============== MANIFEST DATA ================ -->
<!-- ============================================== -->
<manifest.name>com/bernardomg/tabletop/dice</manifest.name>
<!-- ============================================== -->
<!-- =========== DEPENDENCIES VERSIONS ============ -->
<!-- ============================================== -->
<antlr.version>4.13.2</antlr.version>
<assertj.version>3.27.3</assertj.version>
<junit.jupiter.version>5.13.3</junit.jupiter.version>
<mockito.version>5.18.0</mockito.version>
<log4j.version>2.25.0</log4j.version>
<slf4j.version>2.0.17</slf4j.version>
<!-- ============================================== -->
<!-- ============== PLUGINS VERSIONS ============== -->
<!-- ============================================== -->
<plugin.antlr.version>${antlr.version}</plugin.antlr.version>
<plugin.antlr.test.version>1.22</plugin.antlr.test.version>
<!-- ============================================== -->
<!-- ============ PLUGIN CONFIGURATION ============ -->
<!-- ============================================== -->
<!-- Checkstyle customized rules file -->
<checkstyle.config.location>${project.basedir}/src/config/checkstyle/checkstyle-rules.xml</checkstyle.config.location>
<!-- Excludes generated code for Checkstyle -->
<checkstyle.excludes>**/generated/**/*</checkstyle.excludes>
<!-- Exclusion patterns for SpotBugs -->
<spotbugs.excludeFilterFile>${project.basedir}/src/config/spotbugs/spotbugs-exclude.xml</spotbugs.excludeFilterFile>
<!-- ============================================== -->
<!-- ================= MAVEN SITE ================= -->
<!-- ============================================== -->
<site.skin.version>2.4.1</site.skin.version>
<mavenURL>http://mvnrepository.com/artifact/com.bernardomg.tabletop/dice</mavenURL>
<githubArtifactURL><![CDATA[https://github.com/Bernardo-MG?tab=packages&repo_name=dice-notation-java]]></githubArtifactURL>
</properties>
<!-- ********************************************** -->
<!-- *************** DEPENDENCIES ***************** -->
<!-- ********************************************** -->
<dependencyManagement>
<dependencies>
<dependency>
<!-- JUnit BOM -->
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>${junit.jupiter.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<!-- Antlr -->
<groupId>org.antlr</groupId>
<artifactId>antlr4</artifactId>
<version>${antlr.version}</version>
</dependency>
<!-- ============================================== -->
<!-- ================== LOGGERS =================== -->
<!-- ============================================== -->
<dependency>
<!-- SLF4J API -->
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<!-- Log4j SLF4J Bridge -->
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j2-impl</artifactId>
<version>${log4j.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<!-- Log4j core -->
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>${log4j.version}</version>
<scope>provided</scope>
</dependency>
<!-- ============================================== -->
<!-- ======= TEST ENVIRONMENT DEPENDENCIES ======== -->
<!-- ============================================== -->
<dependency>
<!-- JUnit Jupiter Engine -->
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<!-- JUnit Jupiter Params -->
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<!-- AssertJ -->
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>${assertj.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<!-- Mockito -->
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<!-- Mockito JUnit -->
<groupId>org.mockito</groupId>
<artifactId>mockito-junit-jupiter</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- ********************************************** -->
<!-- ******************* BUILD ******************** -->
<!-- ********************************************** -->
<build>
<defaultGoal>clean package install</defaultGoal>
<pluginManagement>
<plugins>
<plugin>
<!-- ANTRL4 -->
<!-- Builds a parser from the grammar -->
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<version>${plugin.antlr.version}</version>
</plugin>
<plugin>
<!-- ANTRL4 Tests -->
<!-- Tests the grammar -->
<groupId>com.khubla.antlr</groupId>
<artifactId>antlr4test-maven-plugin</artifactId>
<version>${plugin.antlr.test.version}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<!-- Changes -->
<!-- Takes care of the changes log -->
<!-- It is set to also validate the changes log file -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-changes-plugin</artifactId>
<executions>
<!-- Changes plugin is bound to the pre-site phase -->
<execution>
<id>check-changes</id>
<phase>pre-site</phase>
<goals>
<goal>changes-check</goal>
</goals>
</execution>
<execution>
<id>validate-changes</id>
<phase>pre-site</phase>
<goals>
<goal>changes-validate</goal>
</goals>
<configuration>
<failOnError>true</failOnError>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<!-- Site -->
<!-- Generates the Maven Site -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<dependencies>
<dependency>
<!-- Docs Maven Skin -->
<groupId>com.bernardomg.maven.skins</groupId>
<artifactId>docs-maven-skin</artifactId>
<version>${site.skin.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<!-- ANTRL4 -->
<!-- Builds a parser from the grammar -->
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<configuration>
<treatWarningsAsErrors>true</treatWarningsAsErrors>
</configuration>
<executions>
<!-- Parse grammar is bound to the generate sources phase -->
<execution>
<id>antlr</id>
<goals>
<goal>antlr4</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!-- ANTRL4 Tests -->
<!-- Tests the grammar -->
<groupId>com.khubla.antlr</groupId>
<artifactId>antlr4test-maven-plugin</artifactId>
<configuration>
<verbose>true</verbose>
<showTree>true</showTree>
<entryPoint>notation</entryPoint>
<grammarName>DiceNotation</grammarName>
<packageName>com.bernardomg.tabletop.dice.generated</packageName>
<exampleFiles>src/test/resources/examples</exampleFiles>
</configuration>
<executions>
<execution>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!-- Build helper -->
<!-- Adds the generated files to the Maven classpath -->
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<!-- ANTLR4 grammar -->
<source>${project.basedir}/src/main/antlr4</source>
<!-- ANTLR4 generated code -->
<source>${project.build.directory}/generated-sources/antlr4</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<!-- ********************************************** -->
<!-- ****************** REPORTS ******************* -->
<!-- ********************************************** -->
<reporting>
<plugins>
<plugin>
<!-- Javadoc -->
<!-- Generates the javadocs -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<links>
<link>http://www.antlr.org/api/Java/</link>
</links>
<!-- Excludes generated code -->
<excludePackageNames>*.generated.*</excludePackageNames>
</configuration>
</plugin>
<plugin>
<!-- PMD -->
<!-- Checks that the code complies with a series of code quality
rules -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<configuration>
<rulesets>
<!-- The customized rules file -->
<ruleset>${project.basedir}/src/config/pmd/pmd-rules.xml</ruleset>
</rulesets>
<excludes>
<!-- Excludes generated code -->
<exclude>**/generated/**/*</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</reporting>
</project>