Skip to content
Snippets Groups Projects
pom.xml 24.4 KiB
Newer Older
Olivier Maury's avatar
Olivier Maury committed
<!--

    data.pheno.fr - Phenological data portal of TEMPO
    Copyright © 2019 TEMPO (contact-tempo@inrae.fr)

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program. If not, see <http://www.gnu.org/licenses/>.

-->
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
<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>fr.soeretempo</groupId>
	<artifactId>tempogwt</artifactId>
	<version>1.1.1-SNAPSHOT</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
	<packaging>war</packaging>
Olivier Maury's avatar
Olivier Maury committed
	<name>data.pheno.fr</name>
	<description>Phenological data portal of TEMPO</description>
	<inceptionYear>2019</inceptionYear>
	<url>https://data.pheno.fr/</url>
	<ciManagement>
		<url>http://agroclimvm45:8080/job/TEMPO/</url>
		<system>Jenkins</system>
	</ciManagement>
	<issueManagement>
		<system>Redmine</system>
		<url>https://w3.avignon.inrae.fr/forge/projects/tempo</url>
	</issueManagement>
	<licenses>
		<license>
			<name>GNU General Public License</name>
			<url>https://www.gnu.org/licenses/gpl-3.0.txt</url>
		</license>
	</licenses>
	<organization>
		<url>https://tempo.pheno.fr/</url>
		<name>TEMPO</name>
	</organization>
Olivier Maury's avatar
Olivier Maury committed
		<connection>scm:svn:https://w3.avignon.inrae.fr/svn/perpheclim/branches/tempo/tempogwt/</connection>
		<tag>trunk</tag>
Olivier Maury's avatar
Olivier Maury committed
		<url>https://w3.avignon.inrae.fr/svn/perpheclim/branches/tempo/tempogwt/</url>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
	<properties>
		<license.dir>${basedir}</license.dir>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<analytics.tracking.id></analytics.tracking.id>
Olivier Maury's avatar
Olivier Maury committed
		<application.log.level>FINEST</application.log.level>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<environment>dev</environment>
		<!-- versions -->
		<ehcache.version>3.9.3</ehcache.version>
		<gwt.version>2.9.0</gwt.version>
		<hibernate.version>5.4.30.Final</hibernate.version>
		<jersey.version>2.29.1</jersey.version>
		<log4j.version>2.15.0</log4j.version>
		<postgresql.version>42.2.18</postgresql.version>
TROMEL LOUIS's avatar
TROMEL LOUIS committed
		<sido.version>1.0.4</sido.version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<!-- checkStyle -->
		<checkstyle.config.location>file://${basedir}/config/sun_checks.xml</checkstyle.config.location>
		<checkstyle.failsOnError>false</checkstyle.failsOnError>
		<checkstyle.includeResources>false</checkstyle.includeResources>
		<checkstyle.includeTestResources>false</checkstyle.includeTestResources>
		<checkstyle.includeTestSourceDirectory>true</checkstyle.includeTestSourceDirectory>
		<maven.build.timestamp.format>yyyy-MM-dd HH:mm:ss</maven.build.timestamp.format>
		<include.tests>**/*Test.java</include.tests>
		<sloccount.path>${session.executionRootDirectory}/bin/sloccount.sh</sloccount.path>
		<!-- Setting maven.compiler.source to something different to 1.8 needs 
			that you configure the sourceLevel in gwt-maven-plugin since GWT compiler 
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
			2.8 requires 1.8 (see gwt-maven-plugin block below) -->
		<maven.compiler.source>11</maven.compiler.source>
		<maven.compiler.target>11</maven.compiler.target>
		<maven.compiler.testSource>11</maven.compiler.testSource>
		<maven.compiler.testTarget>11</maven.compiler.testTarget>
		<!-- deploy to Tomcat -->
		<maven.tomcat.path>/tempogwt</maven.tomcat.path>
		<maven.tomcat.server>tempo-localhost</maven.tomcat.server>
		<maven.tomcat.url>http://localhost:8080/manager/text</maven.tomcat.url>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<!-- Don't let your Mac use a crazy non-standard encoding -->
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
	</properties>
	<profiles>
		<profile>
			<properties>
				<environment>preprod</environment>
				<analytics.tracking.id>UA-141837324-2</analytics.tracking.id>
				<!-- <application.log.level>INFO</application.log.level> -->
				<application.log.level>FINEST</application.log.level>
				<maven.tomcat.path>/tempo-preprod</maven.tomcat.path>
				<maven.tomcat.url>http://tempo-preprod:8080/manager/text</maven.tomcat.url>
				<maven.tomcat.server>tempo-preprod</maven.tomcat.server>
			</properties>
		</profile>
		<profile>
			<properties>
				<environment>production</environment>
				<analytics.tracking.id>UA-141837324-1</analytics.tracking.id>
				<!-- <application.log.level>WARNING</application.log.level> -->
				<application.log.level>FINEST</application.log.level>
				<maven.tomcat.path>/</maven.tomcat.path>
				<maven.tomcat.url>http://data.pheno.fr/manager/text</maven.tomcat.url>
				<maven.tomcat.server>tempo-prod</maven.tomcat.server>
			</properties>
		</profile>
		<profile>
TROMEL LOUIS's avatar
TROMEL LOUIS committed
			<id>dev-louis</id>
TROMEL LOUIS's avatar
TROMEL LOUIS committed
				<environment>dev-louis</environment>
			</properties>
		</profile>
		<profile>
			<id>dev-om</id>
			<properties>
				<environment>dev-om</environment>
			</properties>
		</profile>
		<profile>
			<id>agroclimVM03</id>
			<properties>
				<environment>integration</environment>
				<maven.tomcat.url>http://147.100.20.3:9090/manager/</maven.tomcat.url>
				<maven.tomcat.server>admin-agroclim</maven.tomcat.server>
			</properties>
		</profile>
		<profile>
			<id>selenium</id>
			<properties>
				<include.tests>**/RunCucumber.java</include.tests>
				<exclude.tests>**/*Test.java</exclude.tests>
			</properties>
		<profile>
			<id>windows</id>
			<activation>
				<os>
					<family>Windows</family>
				</os>
			</activation>
			<properties>
				<checkstyle.config.location>${basedir}\config\sun_checks.xml</checkstyle.config.location>
				<sloccount.path>bin\sloccount.bat</sloccount.path>
			</properties>
		</profile>
	</profiles>
	<dependencyManagement>
		<dependencies>
			<!-- ensure all GWT deps use the same version (unless overridden) -->
			<dependency>
				<groupId>com.google.gwt</groupId>
				<artifactId>gwt</artifactId>
				<version>${gwt.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>
	
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
	<dependencies>
		<!-- Log4J -->
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>${log4j.version}</version>
		</dependency>

		<!-- GWT -->
		<dependency>
			<groupId>com.google.gwt</groupId>
			<artifactId>gwt-servlet</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>com.google.gwt</groupId>
			<artifactId>gwt-dev</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.google.gwt</groupId>
			<artifactId>gwt-codeserver</artifactId>
		</dependency>
		<dependency>
			<groupId>com.google.gwt</groupId>
			<artifactId>gwt-user</artifactId>
			<scope>provided</scope>
			<type>jar</type>
		</dependency>
		<!-- GWT-Bootstrap -->
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<dependency>
			<groupId>org.gwtbootstrap3</groupId>
			<artifactId>gwtbootstrap3</artifactId>
			<version>0.9.4</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		</dependency>
		<dependency>
			<groupId>org.gwtbootstrap3</groupId>
			<artifactId>gwtbootstrap3-extras</artifactId>
			<version>0.9.4</version>
		</dependency>

		<!-- OpenLayers3 7.2.0 -->
			<groupId>com.github.tdesjardins</groupId>
			<artifactId>gwt-ol3</artifactId>
			<version>7.2.0</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<!-- Detect browser from User agent -->
		<dependency>
			<groupId>com.blueconic</groupId>
			<artifactId>browscap-java</artifactId>
			<version>1.3.11</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		</dependency>

		<!-- Redmine -->
		<dependency>
			<groupId>com.taskadapter</groupId>
			<artifactId>redmine-java-api</artifactId>
			<version>2.6.0</version>
		</dependency>

		<!-- Markdown to HTML -->
		<dependency>
			<groupId>com.vladsch.flexmark</groupId>
			<artifactId>flexmark</artifactId>
			<version>0.19.4</version>
		</dependency>

		<!-- Mail -->
		<dependency>
			<groupId>javax.mail</groupId>
			<artifactId>javax.mail-api</artifactId>
			<version>1.5.6</version>
		</dependency>
		<dependency>
			<groupId>com.sun.mail</groupId>
			<artifactId>javax.mail</artifactId>
			<version>1.5.6</version>
		</dependency>

		<!-- fast serialization -->
		<dependency>
			<groupId>de.ruedigermoeller</groupId>
			<artifactId>fst</artifactId>
			<version>2.57</version>
			<exclusions>
				<exclusion>
					<groupId>com.fasterxml.jackson.core</groupId>
					<artifactId>jackson-core</artifactId>
				</exclusion>
			</exclusions>
		<dependency>
			<artifactId>sido-rs</artifactId>
			<groupId>fr.soeretempo</groupId>
			<version>${sido.version}</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<!-- Tests -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
			<version>${junit.version}</version>
		</dependency>
		<dependency>
			<groupId>org.assertj</groupId>
			<artifactId>assertj-core</artifactId>
			<version>3.14.0</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.github.tomakehurst</groupId>
			<artifactId>wiremock-jre8-standalone</artifactId>
			<version>2.25.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>3.6.28</version>
			<scope>test</scope>
		</dependency>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<!-- Java EE -->
		<!-- Tomcat does only a partial implementation! -->
		<!-- for @RequestScoped -->
		<!-- JPA -->
		<dependency>
			<groupId>javax</groupId>
			<artifactId>javaee-web-api</artifactId>
			<version>7.0</version>
			<scope>provided</scope>
		</dependency>
		<!-- JPA Impl : Hibernate -->
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-core</artifactId>
			<version>${hibernate.version}</version>
		</dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-hikaricp</artifactId>
            <version>${hibernate.version}</version>
        </dependency>
		<!-- Driver for JPA -->
		<dependency>
			<groupId>org.postgresql</groupId>
			<artifactId>postgresql</artifactId>
			<version>${postgresql.version}</version>
		</dependency>
TROMEL LOUIS's avatar
TROMEL LOUIS committed
		<!-- EHCache Core APIs -->
		<dependency>
TROMEL LOUIS's avatar
TROMEL LOUIS committed
		    <groupId>org.ehcache</groupId>
		    <artifactId>ehcache</artifactId>
		    <version>${ehcache.version}</version>
		</dependency>
TROMEL LOUIS's avatar
TROMEL LOUIS committed
		<!-- Hibernate EHCache API -->
TROMEL LOUIS's avatar
TROMEL LOUIS committed
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-ehcache</artifactId>
			<version>${hibernate.version}</version>
		<!-- Hibernate JCache API -->
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-jcache</artifactId>
			<version>${hibernate.version}</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/com.h2database/h2 -->
		<dependency>
			<groupId>com.h2database</groupId>
			<artifactId>h2</artifactId>
			<version>1.4.200</version>
			<scope>test</scope>
		</dependency>
		<!-- map Java and SQL arrays with JPA and Hibernate for Query table -->
		<dependency>
			<groupId>com.vladmihalcea</groupId>
			<artifactId>hibernate-types-52</artifactId>
			<version>2.9.4</version>
		</dependency>
		<!-- CDI - JSR-299 = JSR-330 (DI) + JSR-341 (EL) + JSR-318 (Interceptors) 
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
			+ More (scopes etc) -->
		<dependency>
			<groupId>javax.enterprise</groupId>
			<artifactId>cdi-api</artifactId>
			<scope>provided</scope>
			<version>1.2</version>
		</dependency>
		<!-- CDI 1.2 Impl: http://weld.cdi-spec.org -->
		<dependency>
			<groupId>org.jboss.weld.servlet</groupId>
			<artifactId>weld-servlet-shaded</artifactId>
			<version>3.0.4.Final</version>
			<scope>runtime</scope>
		</dependency>
		<!-- DI - JSR-330: Inject, Qualifier, Scope, Singleton, Named, and Provider -->
		<dependency>
			<groupId>javax.inject</groupId>
			<artifactId>javax.inject</artifactId>
			<scope>provided</scope>
			<version>1</version>
		</dependency>

Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		<!-- Jersey 2.x -->
		<!-- jersey 2.16 does not work! -->
		<dependency>
			<groupId>javax</groupId>
			<artifactId>javaee-api</artifactId>
			<version>7.0</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.core</groupId>
			<artifactId>jersey-client</artifactId>
			<version>${jersey.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.inject</groupId>
			<artifactId>jersey-hk2</artifactId>
			<version>${jersey.version}</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		</dependency>
		<dependency>
			<!-- https://jersey.java.net/documentation/latest/media.html#json.jackson -->
			<groupId>org.glassfish.jersey.media</groupId>
			<artifactId>jersey-media-json-jackson</artifactId>
			<version>${jersey.version}</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		</dependency>
		<dependency>
			<!-- to add HTTP headers for authentication -->
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
			<version>1.10</version>
		</dependency>
		<!-- jackson -->
		<!-- TODO : use jackson-databind -->
		<dependency>
			<groupId>org.codehaus.jackson</groupId>
			<artifactId>jackson-mapper-asl</artifactId>
			<version>1.9.13</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/com.nimbusds/oauth2-oidc-sdk -->
		<dependency>
		    <groupId>com.nimbusds</groupId>
		    <artifactId>oauth2-oidc-sdk</artifactId>
		    <version>9.19</version>
		</dependency>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
	</dependencies>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
	<build>
		<sourceDirectory>src/main/java</sourceDirectory>
		<testSourceDirectory>src/test/java</testSourceDirectory>
		<!-- Configuration files -->
		<resources>
			<resource>
				<directory>src/main/resources</directory>
			</resource>
			<resource>
				<directory>src/main/config/${environment}</directory>
			</resource>
			<!-- Store build date, version and revision. -->
			<resource>
				<directory>src/main/filtered</directory>
				<filtering>true</filtering>
			</resource>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		</resources>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-enforcer-plugin</artifactId>
				<version>3.0.0-M3</version>
				<executions>
					<execution>
						<id>enforce-versions</id>
						<goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<requireJavaVersion>
									<version>11</version>
								</requireJavaVersion>
							</rules>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<!-- Compute buildNumber -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>buildnumber-maven-plugin</artifactId>
				<version>1.4</version>
				<executions>
					<execution>
						<phase>validate</phase>
						<goals>
							<goal>create</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<doCheck>false</doCheck>
					<doUpdate>false</doUpdate>
					<format>{0}</format>
					<items>
						<item>scmVersion</item>
					</items>
					<providerImplementations>
						<svn>javasvn</svn>
					</providerImplementations>
				</configuration>
			</plugin>
			<!-- Count lines of code. -->
			<plugin>
				<artifactId>exec-maven-plugin</artifactId>
				<groupId>org.codehaus.mojo</groupId>
				<version>1.4.0</version>
				<executions>
					<execution>
						<phase>package</phase>
						<goals>
							<goal>exec</goal>
						</goals>
						<configuration>
							<executable>${sloccount.path}</executable>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<!-- Report on code coverage -->
			<!-- https://mvnrepository.com/artifact/org.jacoco/jacoco-maven-plugin -->
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>jacoco-initialize</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>jacoco-report</id>
						<phase>package</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
					<execution>
						<!-- Generate coverage report html in target/site/jacoco/ from target/jacoco.exec -->
						<id>report</id>
						<phase>site</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- Fix checkstyle version to ensure sun_checks.xml matches. -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<version>3.1.1</version>
				<configuration>
					<excludes>**/module-info.java</excludes>
					<propertyExpansion>basedir=${basedir}</propertyExpansion>
				</configuration>
			</plugin>
			<!-- PMD and CPD reports -->
			<!-- mvn pmd:pmd -->
			<!-- mvn pmd:cpd -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-pmd-plugin</artifactId>
				<configuration>
					<linkXref>true</linkXref>
					<failOnViolation>false</failOnViolation>
					<excludes>
						<exclude>target/generated-sources/*.java</exclude>
					</excludes>
				</configuration>
				<executions>
					<execution>
						<id>pmd</id>
						<goals>
							<goal>check</goal>
						</goals>
						<configuration>
							<excludeFromFailureFile>config/pmd-suppressions.properties</excludeFromFailureFile>
						</configuration>
					</execution>
					<execution>
						<id>cpd</id>
						<goals>
							<goal>cpd-check</goal>
						</goals>
						<configuration>
							<excludeFromFailureFile>config/cpd-suppressions.properties</excludeFromFailureFile>
						</configuration>
					</execution>
				</executions>
			</plugin>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
			<!-- Running JUnit tests -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.4.3</version>
				<configuration>
					<excludes>
						<exclude>${exclude.tests}</exclude>
					</excludes>
					<includes>
						<include>${include.tests}</include>
					</includes>
				</configuration>
			</plugin>
			<!-- GWT Maven Plugin -->
			<plugin>
				<!-- http://mojo.codehaus.org/gwt-maven-plugin/run-mojo.html -->
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>gwt-maven-plugin</artifactId>
				<version>2.9.0</version>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
				<executions>
					<execution>
						<goals>
							<goal>compile</goal>
							<goal>test</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<runTarget>Tempo.html</runTarget>
					<!-- Unit tests: Default naming convention of the Maven GWT plugin : 
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
						*Test.java for standard unit tests and GwtTest*.java for GWT test cases. -->
					<!-- Run tests using HtmlUnit -->
					<mode>htmlunit</mode>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
				<configuration>
					<warSourceDirectory>src/main/webapp</warSourceDirectory>
					<webXml>src/main/webapp/WEB-INF/web.xml</webXml>
					<useCache>true</useCache>
					<webResources>
						<resource>
							<targetPath>WEB-INF/</targetPath>
							<directory>src/main/config/${environment}</directory>
							<includes>
								<include>log4j.xml</include>
							</includes>
						</resource>
						<resource>
							<targetPath>WEB-INF/classes/</targetPath>
							<directory>src/main/config/${environment}</directory>
							<includes>
								<include>config.properties</include>
							</includes>
						</resource>
					</webResources>
					<!-- Add attributes to META-INF/MANIFEST.MF -->
					<archive>
						<manifest>
							<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
						</manifest>
						<manifestEntries>
							<Implementation-Build>${buildNumber}</Implementation-Build>
						</manifestEntries>
					</archive>
				</configuration>
				<executions>
					<execution>
						<id>prepare-war</id>
						<phase>prepare-package</phase>
						<goals>
							<goal>exploded</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- Replacement of variables into .html -->
			<plugin>
				<groupId>com.google.code.maven-replacer-plugin</groupId>
				<artifactId>replacer</artifactId>
				<version>1.5.3</version>
				<executions>
					<execution>
						<phase>prepare-package</phase>
						<goals>
							<goal>replace</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<file>${project.build.directory}/${project.artifactId}-${project.version}/Tempo.html</file>
					<regex>true</regex>
					<replacements>
						<replacement>
							<token>&lt;!-- .* --&gt;${line.separator}</token>
							<value></value>
						</replacement>
						<replacement>
							<token>ANALYTICS-TRACKING-ID</token>
							<value>${analytics.tracking.id}</value>
						</replacement>
						<replacement>
							<token>DATE</token>
							<value>${maven.build.timestamp}</value>
						</replacement>
Olivier Maury's avatar
Olivier Maury committed
						<replacement>
							<token>LOGLEVEL</token>
							<value>${application.log.level}</value>
						</replacement>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
						<replacement>
							<token>REVISION</token>
							<value>${buildNumber}</value>
						</replacement>
						<replacement>
							<token>VERSION</token>
							<value>${project.version}</value>
						</replacement>
					</replacements>
				</configuration>
			</plugin>

			<!-- Tomcat deployment -->
			<!-- $HOME/.m2/settings.xml <settings> <servers> <server> <id>Tomcat6</id> 
				<username>tomcat</username> <password>tomcat</password> </server> </servers> 
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
				</settings> -->
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat7-maven-plugin</artifactId>
				<version>2.2</version>
			</plugin>

			<!-- Generate PlantUML diagrams -->
			<!-- https://github.com/jeluard/maven-plantuml-plugin -->
			<!-- mvn clean com.github.jeluard:plantuml-maven-plugin:generate -->
			<plugin>
				<groupId>com.github.jeluard</groupId>
				<artifactId>plantuml-maven-plugin</artifactId>
				<!-- http://mvnrepository.com/artifact/com.github.jeluard/plantuml-maven-plugin -->
				<version>1.1</version>
				<configuration>
					<sourceFiles>
						<directory>${basedir}</directory>
						<includes>
							<include>src/site/resources/images/*.puml</include>
						</includes>
					</sourceFiles>
					<outputInSourceDirectory>true</outputInSourceDirectory>
				</configuration>
				<dependencies>
					<dependency>
						<groupId>net.sourceforge.plantuml</groupId>
						<artifactId>plantuml</artifactId>
						<!-- http://mvnrepository.com/artifact/net.sourceforge.plantuml/plantuml -->
						<version>8015</version>
					</dependency>
				</dependencies>
				<executions>
					<!-- launch com.github.jeluard:plantuml-maven-plugin:generate when running 
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
						`mvn site` -->
					<execution>
						<goals>
							<goal>generate</goal>
						</goals>
						<phase>site</phase>
					</execution>
				</executions>
			</plugin>
Olivier Maury's avatar
Olivier Maury committed

			<!-- License header -->
			<!-- license:check -->
			<!-- license:format -->
			<!-- https://mycila.mathieu.photography/license-maven-plugin/ -->
			<plugin>
				<groupId>com.mycila</groupId>
				<artifactId>license-maven-plugin</artifactId>
				<version>4.0.rc1</version>
		        <configuration>
		            <licenseSets>
		                <licenseSet>
		                    <header>com/mycila/maven/plugin/license/templates/GPL-3.txt</header>
		                    <excludes>
		                        <exclude>readme.md</exclude>
		                        <exclude>**/*.csv</exclude>
		                        <exclude>**/lombok.config</exclude>
		                        <exclude>**/*.key</exclude>
		                        <exclude>**/*.txt</exclude>
		                        <exclude>bin/tokei</exclude>
		                        <exclude>config/sun_checks.xml</exclude>
		                        <exclude>src/main/resources/fr/soeretempo/gwt/client/resources/locales/*</exclude>
		                        <exclude>src/main/webapp/sitemap.xml</exclude>
		                    </excludes>
		                </licenseSet>
		            </licenseSets>
					<properties>
						<owner>TEMPO</owner>
						<email>contact-tempo@inrae.fr</email>
					</properties>
				</configuration>
			</plugin>
Mohamed El Hasnaoui's avatar
Mohamed El Hasnaoui committed
		</plugins>
		<pluginManagement>
			<plugins>
				<plugin>
					<artifactId>maven-site-plugin</artifactId>
					<version>3.3</version>
					<configuration>
						<locales>fr</locales>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
Olivier Maury's avatar
Olivier Maury committed
	<reporting>
	    <plugins>
	        <plugin>
	            <groupId>org.apache.maven.plugins</groupId>
	            <artifactId>maven-jxr-plugin</artifactId>
	            <version>3.0.0</version>
	        </plugin>
	    </plugins>
	</reporting>