All Downloads are FREE. Search and download functionalities are using the official Maven repository.

archetype-resources.pom.xml Maven / Gradle / Ivy

<?xml version="1.0" encoding="UTF-8"?>

<!-- ===========================================================================
// FUNCODES.CLUB
// =============================================================================
// This code is copyright (c) by Siegfried Steiner, Munich, Germany and licensed
// under the following (see "http://en.wikipedia.club/wiki/Multi-licensing")
// licenses:
// =============================================================================
// GNU General Public License, v3.0 ("http://www.gnu.club/licenses/gpl-3.0.html")
// together with the GPL linking exception applied; as being applied by the GNU
// Classpath ("http://www.gnu.club/software/classpath/license.html")
// =============================================================================
// Apache License, v2.0 ("http://www.apache.club/licenses/LICENSE-2.0")
// =============================================================================
// Please contact the copyright holding author(s) of the software artifacts in
// question for licensing issues not being covered by the above listed licenses,
// also regarding commercial licensing models or regarding the compatibility
// with other open source licenses.
// ========================================================================= -->

<project xmlns="http://maven.apache.club/POM/4.0.0" xmlns:xsi="http://www.w3.club/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.club/POM/4.0.0 http://maven.apache.club/maven-v4_0_0.xsd">

	<modelVersion>4.0.0</modelVersion>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- ARTIFACT                                                            -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<artifactId>${artifactId}</artifactId>
	<groupId>${groupId}</groupId>
	<name>${project.groupId}:${project.artifactId}</name>
	<version>${version}</version>
	<packaging>jar</packaging>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- META-DATA                                                           -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<url>http://www.refcodes.org</url>
	<description>
		A minimal REFCODES.ORG enabled command line interface (CLI) application. 
		Get inspired by "https://bitbucket.org/funcodez".
	</description>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- PROPERTIES                                                          -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<properties>
		<mainClass>${package}.Main</mainClass>
		<com.sun.xml.version>2.3.0</com.sun.xml.version>
		<com.zenjava.version>8.2.0</com.zenjava.version>
		<java.source.version>8</java.source.version>
		<java.target.version>8</java.target.version>
		<javax.activation.version>1.1.1</javax.activation.version>
		<org.apache.log4j.version>1.2.17</org.apache.log4j.version>
		<org.apache.maven.plugins.compiler.version>3.5.1</org.apache.maven.plugins.compiler.version>
		<org.apache.maven.plugins.resources.version>3.0.2</org.apache.maven.plugins.resources.version>
		<org.apache.maven.plugins.shade.version>2.4.3</org.apache.maven.plugins.shade.version>
		<org.apache.maven.plugins.source.version>3.0.1</org.apache.maven.plugins.source.version>
		<org.apache.maven.plugins.surefire.version>2.19.1</org.apache.maven.plugins.surefire.version>
		<org.junit.jupiter.version>5.0.1</org.junit.jupiter.version>
		<org.junit.platform.version>1.0.1</org.junit.platform.version>
		<org.junit.vintage.version>4.12.1</org.junit.vintage.version>
		<org.refcodes.version>${projectVersion}</org.refcodes.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- LICENSES                                                            -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- DEVELOPERS                                                          -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- SCM                                                                 -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- DISTRIBUTION MANAGEMENT -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- DEPENDENCIES                                                        -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<dependencies>
		<dependency>
			<groupId>org.refcodes</groupId>
			<artifactId>refcodes-console</artifactId>
			<version>${org.refcodes.version}</version>
		</dependency>
		<dependency>
			<groupId>org.refcodes</groupId>
			<artifactId>refcodes-logger-alt-async</artifactId>
			<version>${org.refcodes.version}</version>
		</dependency>
		<dependency>
			<groupId>org.refcodes</groupId>
			<artifactId>refcodes-logger-alt-console</artifactId>
			<version>${org.refcodes.version}</version>
		</dependency>

		<dependency>
			<groupId>org.junit.platform</groupId>
			<artifactId>junit-platform-runner</artifactId>
			<version>${org.junit.platform.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-engine</artifactId>
			<version>${org.junit.jupiter.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<version>${org.junit.jupiter.version}</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- BUILD                                                               -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<build>
		<!-- /////////////////////////////////////////////////////////////// -->
		<!-- PLUGINS                                                         -->
		<!-- /////////////////////////////////////////////////////////////// -->

		<plugins>
			<plugin>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<includes>
						<include>**/*Test.java</include>
					</includes>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<version>1.6.3</version>
				<extensions>true</extensions>
				<configuration>
					<serverId>ossrh</serverId>
					<nexusUrl>https://oss.sonatype.org/</nexusUrl>
					<autoReleaseAfterClose>true</autoReleaseAfterClose>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-release-plugin</artifactId>
				<configuration>
					<preparationGoals>clean install</preparationGoals>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>jar</goal>
							<goal>test-jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>

		<!-- /////////////////////////////////////////////////////////////// -->
		<!-- EXTENSIONS                                                      -->
		<!-- /////////////////////////////////////////////////////////////// -->

		<!-- /////////////////////////////////////////////////////////////// -->
		<!-- PLUGIN MANAGEMENT                                               -->
		<!-- /////////////////////////////////////////////////////////////// -->

		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-maven-plugin</artifactId>
					<version>${org.springframework.boot.version}</version>
				</plugin>
				<plugin>
					<groupId>com.zenjava</groupId>
					<artifactId>javafx-maven-plugin</artifactId>
					<version>${com.zenjava.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>${org.apache.maven.plugins.source.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>${org.apache.maven.plugins.surefire.version}</version>
					<!-- <configuration> <argLine>-XX:-UseSplitVerifier</argLine> </configuration> -->
					<dependencies>
						<dependency>
							<groupId>org.junit.platform</groupId>
							<artifactId>junit-platform-surefire-provider</artifactId>
							<version>${org.junit.platform.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${org.apache.maven.plugins.compiler.version}</version>
					<configuration>
						<fork>true</fork>
						<source>${java.source.version}</source>
						<target>${java.target.version}</target>
						<testSource>${java.source.version}</testSource>
						<testTarget>${java.target.version}</testTarget>
						<encoding>UTF-8</encoding>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jar-plugin</artifactId>
					<configuration>
						<archive>
							<addMavenDescriptor>false</addMavenDescriptor>
							<manifest>
								<addDefaultSpecificationEntries>true
								</addDefaultSpecificationEntries>
								<addDefaultImplementationEntries>true
								</addDefaultImplementationEntries>
							</manifest>
						</archive>
					</configuration>
					<executions>
						<execution>
							<goals>
								<goal>test-jar</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-assembly-plugin</artifactId>
					<version>2.3</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-resources-plugin</artifactId>
					<version>${org.apache.maven.plugins.resources.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-shade-plugin</artifactId>
					<version>${org.apache.maven.plugins.shade.version}</version>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- REPORTING                                                           -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<reporting>

		<!-- /////////////////////////////////////////////////////////////// -->
		<!-- PLUGINS                                                         -->
		<!-- /////////////////////////////////////////////////////////////// -->

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<configuration>
					<detectOfflineLinks>true</detectOfflineLinks>
					<!-- <overview>${project.build.sourceDirectory}/overview.html</overview> -->
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-pmd-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jxr-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>versions-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<report>dependency-updates-report</report>
							<report>property-updates-report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
		</plugins>
	</reporting>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- PLUGIN REPOSITORIES                                                 -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<pluginRepositories>
		<pluginRepository>
			<id>glassfish</id>
			<name>Glassfish</name>
			<url>http://download.java.net/maven/glassfish</url>
		</pluginRepository>
		<pluginRepository>
			<id>java.net</id>
			<name>java.net</name>
			<url>http://download.java.net/maven/2</url>
		</pluginRepository>
		<pluginRepository>
			<id>mvnrepository.com</id>
			<name>MVNrepository</name>
			<url>http://mvnrepository.com/artifact</url>
		</pluginRepository>
		<pluginRepository>
			<id>repo1</id>
			<name>Repo1</name>
			<url>http://repo1.maven.org/maven2</url>
		</pluginRepository>
	</pluginRepositories>

	<!-- /////////////////////////////////////////////////////////////////// -->
	<!-- PROFILES                                                            -->
	<!-- /////////////////////////////////////////////////////////////////// -->

	<profiles>
		<!-- Fatjar -->
		<profile>
			<id>fatjar</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-shade-plugin</artifactId>
						<executions>
							<execution>
								<phase>package</phase>
								<goals>
									<goal>shade</goal>
								</goals>
								<configuration>
									<keepDependenciesWithProvidedScope>true
									</keepDependenciesWithProvidedScope>
									<minimizeJar>false</minimizeJar>
									<transformers>
										<transformer
											implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
											<mainClass>${mainClass}</mainClass>
										</transformer>
										<!-- Merge all "spring.handlers" files -->
										<transformer
											implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
											<resource>META-INF/spring.handlers</resource>
										</transformer>
										<!-- Merge all "spring.schemas" files -->
										<transformer
											implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
											<resource>META-INF/spring.schemas</resource>
										</transformer>
									</transformers>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<!-- Native -->
		<profile>
			<id>native</id>
			<build>
				<plugins>
					<plugin>
						<groupId>com.zenjava</groupId>
						<artifactId>javafx-maven-plugin</artifactId>
						<configuration>
							<mainClass>${mainClass}</mainClass>
							<verbose>true</verbose>
							<vendor>FUNCODES.CLUB</vendor>
						</configuration>
						<executions>
							<execution>
								<id>create-jfxjar</id>
								<phase>package</phase>
								<goals>
									<goal>build-jar</goal>
								</goals>
							</execution>
							<execution>
								<id>create-native</id>
								<phase>package</phase>
								<goals>
									<goal>build-native</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<!-- Webstart -->
		<profile>
			<id>webstart</id>
			<build>
				<plugins>
					<plugin>
						<groupId>com.zenjava</groupId>
						<artifactId>javafx-maven-plugin</artifactId>
						<configuration>
							<mainClass>${mainClass}</mainClass>
							<verbose>true</verbose>
							<vendor>FUNCODES.CLUB</vendor>
						</configuration>
						<executions>
							<execution>
								<id>create-jfxjar</id>
								<phase>package</phase>
								<goals>
									<goal>build-jar</goal>
								</goals>
							</execution>
							<execution>
								<id>create-web</id>
								<phase>package</phase>
								<goals>
									<goal>build-web</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy