<?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>org.juzu</groupId>
  <artifactId>juzu-parent</artifactId>
  <version>1.1.1-RC01</version>
  <packaging>pom</packaging>

  <name>Juzu Web Framework</name>
  <description>The Juzu Web Framework</description>
  <url>http://github.com/juzu/juzu</url>

  <organization>
    <name>eXo Platform SAS</name>
    <url>http://www.exoplatform.com</url>
  </organization>
  <licenses>
    <license>
      <name>LGPL, version 2.1</name>
      <url>http://www.opensource.org/licenses/lgpl-license.php</url>
    </license>
  </licenses>

  <prerequisites>
    <!-- It is impossible to build with an older maven version due to plugins used -->
    <maven>2.2.1</maven>
  </prerequisites>

  <properties>

    <!-- Encoding -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <!-- Dependencies -->
    <cdi-api.version>1.0-SP4</cdi-api.version>
    <inject.version>1</inject.version>
    <javassist.version>3.14.0-GA</javassist.version>
    <weld.version>1.1.8.Final</weld.version>
    <spring.version>3.2.4.RELEASE</spring.version>
    <guice.version>3.0</guice.version>
    <groovy.version>1.8.9</groovy.version>
    <servlet.version>3.0.1</servlet.version>
    <junit.version>4.10</junit.version>

    <!-- Test settings -->
    <juzu.test.compiler>javac</juzu.test.compiler>

    <!-- maven-compiler-plugin -->
    <maven.compiler.target>1.7</maven.compiler.target>
    <maven.compiler.source>1.7</maven.compiler.source>

    <!--  maven-javadoc-plugin -->
    <detectOfflineLinks>false</detectOfflineLinks>
    <!-- too slow : http://jira.codehaus.org/browse/MJAVADOC-268 -->
    <quiet>true</quiet>

    <!-- maven-war-plugin -->
    <useCache>true</useCache>
    <!-- Additional properties to activate the compression of already compressed archives - time expensive -->
    <maven.war.recompressZippedFiles>false</maven.war.recompressZippedFiles>

    <!-- maven-assembly-plugin -->
    <!-- Additional properties to activate the compression of already compressed archives - time expensive -->
    <maven.assembly.recompressZippedFiles>false</maven.assembly.recompressZippedFiles>

    <!-- Sonar/Reporting settings -->
    <sonar.java.target>${maven.compiler.target}</sonar.java.target>
    <sonar.java.source>${maven.compiler.source}</sonar.java.source>
    <!-- Sonar/Jacoco integration. Note that these properties need to be defined outside the "coverage" profile
         because we want to be to able to execute mvn sonar:sonar without passing a profile -->
    <!-- Tells Sonar to use jacoco for coverage results -->
    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
    <!-- Jacoco version to use -->
    <jacoco.version>0.7.1.201405082137</jacoco.version>
    <!-- The Sonar Jacoco Listener for JUnit to extract coverage details per test -->
    <sonar-jacoco-listeners.version>2.4</sonar-jacoco-listeners.version>
    <!-- Don't let Sonar execute tests. We will ask it to Maven -->
    <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
    <!-- The system property jacoco.outputDir needs to be override on the command line
         with an absolute path if you want to merge results from all modules.
         Example in a Jenkisn build where ${WORKSPACE} is defined and your project in the root directory of the workspace :
            mvn clean install -Prun-its,coverage -Djacoco.outputDir=${WORKSPACE}/target
         Note that unfortunately using the following does not work because of
         http://jira.codehaus.org/browse/SONAR-3427:
            <jacoco.outputDir>${session.executionRootDirectory}/target/</jacoco.outputDir>
    -->
    <jacoco.outputDir>${project.build.directory}</jacoco.outputDir>
    <!-- Jacoco output file for UTs -->
    <jacoco.out.ut.file>jacoco-ut.exec</jacoco.out.ut.file>
    <!-- Tells Sonar where the Jacoco coverage result file is located for Unit Tests -->
    <sonar.jacoco.reportPath>${jacoco.outputDir}/${jacoco.out.ut.file}</sonar.jacoco.reportPath>

    <!-- No failures when no web XML is present -->
    <failOnMissingWebXml>false</failOnMissingWebXml>

  </properties>

  <developers>
    <developer>
      <id>julien.viet</id>
      <name>Julien Viet</name>
      <email>julien.viet@exoplatform.com</email>
      <roles>
        <role>Owner</role>
      </roles>
    </developer>
  </developers>

  <scm>
    <connection>scm:git:git://github.com/juzu/juzu.git</connection>
    <developerConnection>scm:git:ssh://git@github.com/juzu/juzu.git</developerConnection>
    <url>https://github.com/juzu/juzu</url>
    <tag>1.1.1-RC01</tag>
  </scm>

  <distributionManagement>
    <repository>
      <id>repository.exoplatform.org</id>
      <url>http://repository.exoplatform.org/service/local/staging/deploy/maven2/</url>
    </repository>
    <snapshotRepository>
      <id>repository.exoplatform.org</id>
      <url>http://repository.exoplatform.org/content/repositories/juzu-snapshots/</url>
    </snapshotRepository>
  </distributionManagement>

  <dependencyManagement>
    <dependencies>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-core</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-core</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-core</artifactId>
        <type>test-jar</type>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-core</artifactId>
        <classifier>javadoc</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-archetype</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-depchain-arquillian</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-depchain-arquillian-tomcat7</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-booking</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-booking</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-booking</artifactId>
        <classifier>gatein</classifier>
        <type>war</type>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-booking</artifactId>
        <type>war</type>
        <classifier>liferay</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-less</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-less</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-validation</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-validation</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-less4j</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-less4j</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-servlet</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-servlet</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-portlet</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-portlet</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-webjars</artifactId>
        <version>1.1.1-RC01</version>
			</dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-webjars</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

			<dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-shiro</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-plugins-shiro</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-templating-mustache</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-templating-mustache</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-examples</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-examples</artifactId>
        <version>1.1.1-RC01</version>
        <classifier>sources</classifier>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-examples</artifactId>
        <version>1.1.1-RC01</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-examples</artifactId>
        <version>1.1.1-RC01</version>
        <classifier>test-sources</classifier>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-examples</artifactId>
        <type>war</type>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-guide</artifactId>
        <classifier>html</classifier>
        <type>zip</type>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-tutorial-guide</artifactId>
        <type>pdf</type>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-examples</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-examples</artifactId>
        <version>1.1.1-RC01</version>
        <classifier>sources</classifier>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-examples</artifactId>
        <version>1.1.1-RC01</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-examples</artifactId>
        <version>1.1.1-RC01</version>
        <classifier>test-sources</classifier>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-guide</artifactId>
        <classifier>html</classifier>
        <type>zip</type>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-api</artifactId>
        <classifier>javadoc</classifier>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-reference-guide</artifactId>
        <type>pdf</type>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-examples</artifactId>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-examples</artifactId>
        <classifier>sources</classifier>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-examples</artifactId>
        <version>1.1.1-RC01</version>
        <type>test-jar</type>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-examples</artifactId>
        <version>1.1.1-RC01</version>
        <classifier>test-sources</classifier>
      </dependency>

      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-guide</artifactId>
        <classifier>html</classifier>
        <type>zip</type>
        <version>1.1.1-RC01</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-api</artifactId>
        <classifier>javadoc</classifier>
        <version>1.0.0-beta4-SNAPSHOT</version>
      </dependency>
      <dependency>
        <groupId>org.juzu</groupId>
        <artifactId>juzu-doc-extension-guide</artifactId>
        <type>pdf</type>
        <version>1.1.1-RC01</version>
      </dependency>

      <dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>${inject.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.enterprise</groupId>
        <artifactId>cdi-api</artifactId>
        <version>${cdi-api.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.portlet</groupId>
        <artifactId>portlet-api</artifactId>
        <version>2.0</version>
        <exclusions>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>${servlet.version}</version>
      </dependency>
      <dependency>
        <groupId>javax.ccpp</groupId>
        <artifactId>ccpp</artifactId>
        <version>1.0</version>
      </dependency>
      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.1.2</version>
      </dependency>
      <dependency>
        <groupId>taglibs</groupId>
        <artifactId>standard</artifactId>
        <version>1.1.2</version>
      </dependency>
    <dependency>
      <groupId>aopalliance</groupId>
      <artifactId>aopalliance</artifactId>
      <version>1.0</version>
    </dependency>

      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>${groovy.version}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.jdt.core.compiler</groupId>
        <artifactId>ecj</artifactId>
        <version>3.7</version>
      </dependency>

      <dependency>
        <groupId>com.github.spullara.mustache.java</groupId>
        <artifactId>compiler</artifactId>
        <version>0.8.0</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>12.0</version>
        <exclusions>
          <exclusion>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>org.jboss.weld</groupId>
        <artifactId>weld-core</artifactId>
        <version>${weld.version}</version>
      </dependency>
      <dependency>
        <groupId>org.glassfish.web</groupId>
        <artifactId>el-impl</artifactId>
        <version>2.1.2-b04</version>
      </dependency>
      <dependency>
        <groupId>org.javassist</groupId>
        <artifactId>javassist</artifactId>
        <version>3.14.0-GA</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.weld.servlet</groupId>
        <artifactId>weld-servlet</artifactId>
        <version>${weld.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.weld.servlet</groupId>
        <artifactId>weld-servlet-core</artifactId>
        <version>${weld.version}</version>
      </dependency>

      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
        <exclusions>
          <exclusion>
            <groupId>aopalliance</groupId>
            <artifactId>aopalliance</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
      </dependency>

      <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
      </dependency>

      <dependency>
        <groupId>com.google.inject</groupId>
        <artifactId>guice</artifactId>
        <version>${guice.version}</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.5.10</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-ext</artifactId>
        <version>1.5.10</version>
        <exclusions>
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.5.10</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.cal10n</groupId>
        <artifactId>cal10n-api</artifactId>
        <version>0.7.2</version>
      </dependency>

      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
      </dependency>
      <dependency>
        <groupId>net.sourceforge.htmlunit</groupId>
        <artifactId>htmlunit</artifactId>
        <version>2.13</version>
      </dependency>

      <!-- GateIn embedded portlet container -->
      <dependency>
        <groupId>org.gatein.pc</groupId>
        <artifactId>pc-api</artifactId>
        <version>2.4.1.CR01</version>
      </dependency>
      <dependency>
        <groupId>org.gatein.pc</groupId>
        <artifactId>pc-portlet</artifactId>
        <version>2.4.1.CR01</version>
      </dependency>
      <dependency>
        <groupId>org.gatein.pc</groupId>
        <artifactId>pc-embed</artifactId>
        <version>2.4.1.CR01</version>
      </dependency>

      <!-- Arquillian/Shrinkwrap stack -->
      <dependency>
        <groupId>org.jboss.arquillian.container</groupId>
        <artifactId>arquillian-container-spi</artifactId>
        <version>1.1.2.Final</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.arquillian.junit</groupId>
        <artifactId>arquillian-junit-container</artifactId>
        <version>1.1.2.Final</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.shrinkwrap</groupId>
        <artifactId>shrinkwrap-api</artifactId>
        <version>1.1.2</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.shrinkwrap</groupId>
        <artifactId>shrinkwrap-impl-base</artifactId>
        <version>1.1.2</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.shrinkwrap.resolver</groupId>
        <artifactId>shrinkwrap-resolver-api-maven</artifactId>
        <version>2.1.0-alpha-1</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.shrinkwrap.resolver</groupId>
        <artifactId>shrinkwrap-resolver-impl-maven</artifactId>
        <version>2.1.0-alpha-1</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.arquillian.extension</groupId>
        <artifactId>arquillian-drone-impl</artifactId>
        <version>1.2.1.Final</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.arquillian.extension</groupId>
        <artifactId>arquillian-drone-selenium</artifactId>
        <version>1.2.1.Final</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.arquillian.extension</groupId>
        <artifactId>arquillian-drone-webdriver</artifactId>
        <version>1.2.1.Final</version>
      </dependency>
      <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>2.37.1</version>
      </dependency>
      <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-server</artifactId>
        <version>2.37.1</version>
        <exclusions>
          <exclusion>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>servlet-api-2.5</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-htmlunit-driver</artifactId>
        <version>2.37.1</version>
      </dependency>
      <dependency>
        <groupId>com.opera</groupId>
        <artifactId>operadriver</artifactId>
        <version>1.5</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.arquillian.extension</groupId>
        <artifactId>arquillian-phantom-driver</artifactId>
        <version>1.1.0.Final</version>
      </dependency>
      <dependency>
        <groupId>com.github.detro.ghostdriver</groupId>
        <artifactId>phantomjsdriver</artifactId>
        <version>1.0.4</version>
        <exclusions>
          <exclusion>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-remote-driver</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Arquillian tomcat container -->
      <dependency>
        <groupId>org.jboss.arquillian.container</groupId>
        <artifactId>arquillian-tomcat-embedded-7</artifactId>
        <version>1.0.0.CR5</version>
        <exclusions>
          <exclusion>
            <groupId>org.jboss.arquillian.container</groupId>
            <artifactId>arquillian-container-spi</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.jboss.arquillian.container</groupId>
            <artifactId>arquillian-container-test-spi</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.jboss.arquillian.protocol</groupId>
            <artifactId>arquillian-protocol-servlet</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.jboss.arquillian.testenricher</groupId>
            <artifactId>arquillian-testenricher-cdi</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.jboss.arquillian.testenricher</groupId>
            <artifactId>arquillian-testenricher-resource</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.jboss.arquillian.testenricher</groupId>
            <artifactId>arquillian-testenricher-initialcontext</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
      <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <version>7.0.20</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <version>7.0.20</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-logging-juli</artifactId>
        <version>7.0.20</version>
      </dependency>
      <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.2</version>
      </dependency>

			<dependency>
				<groupId>org.webjars</groupId>
				<artifactId>webjars-locator</artifactId>
				<version>0.4</version>
			</dependency>
    </dependencies>
  </dependencyManagement>

  <build>
    <plugins>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>test-jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <executions>
          <execution>
            <id>compile-attach-sources</id>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
            <phase>compile</phase>
          </execution>
          <execution>
            <id>test-attach-sources</id>
            <goals>
              <goal>test-jar-no-fork</goal>
            </goals>
            <phase>test</phase>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>reserve-network-port</id>
            <goals>
              <goal>reserve-network-port</goal>
            </goals>
            <phase>process-resources</phase>
            <configuration>
              <portNames>
                <portName>tomcat.http.port</portName>
              </portNames>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>

    <pluginManagement>
      <!-- mvn versions:display-plugin-updates -->
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>2.2.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>2.4</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>versions-maven-plugin</artifactId>
          <version>2.1</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>javacc-maven-plugin</artifactId>
          <version>2.6</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>2.9.1</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>2.4</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-clean-plugin</artifactId>
          <version>2.5</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.7</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.4</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>2.4</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>2.6</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.8</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>1.8</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.1</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.16</version>
          <configuration>
          <systemPropertyVariables>
            <targetDir>${project.build.directory}</targetDir>
            <juzu.test.compiler>${juzu.test.compiler}</juzu.test.compiler>
            <juzu.test.resources.path>${basedir}/src/test/resources</juzu.test.resources.path>
            <juzu.test.workspace.path>${project.build.directory}/workspace</juzu.test.workspace.path>
            <tomcat.http.port>${tomcat.http.port}</tomcat.http.port>
          </systemPropertyVariables>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>2.5</version>
          <configuration>
            <!-- Avoid issues with signature plugin -->
            <mavenExecutorId>forked-path</mavenExecutorId>

            <!-- Rest of config -->
            <useReleaseProfile>false</useReleaseProfile>
            <!-- for release:prepare -->
            <pushChanges>true</pushChanges>
            <!-- for release:perform -->
            <localCheckout>false</localCheckout>
            <autoVersionSubmodules>true</autoVersionSubmodules>
            <arguments>-Psign-artifacts,juzu-release</arguments>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-gpg-plugin</artifactId>
          <version>1.4</version>
        </plugin>

        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.1</version>
        </plugin>

        <plugin>
          <groupId>org.jboss.as.plugins</groupId>
          <artifactId>jboss-as-maven-plugin</artifactId>
          <version>7.4.Final</version>
          <executions>
            <execution>
              <id>default-run</id>
              <configuration>
                <version>7.1.0.Final</version>
              </configuration>
            </execution>
          </executions>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>1.1</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

  <modules>
    <module>core</module>
    <module>depchain</module>
    <!--<module>vertx</module>-->
    <module>templating</module>
    <module>plugins</module>
    <module>archetype</module>
    <module>booking</module>
    <module>doc</module>
    <module>distrib</module>
  </modules>

  <profiles>
    <profile>
      <id>sign-artifacts</id>
      <build>
        <plugins>
          <!-- We want to sign the artifact, the POM, and all attached artifacts -->
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <executions>
              <execution>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>ecj</id>
      <properties>
        <juzu.test.compiler>ecj</juzu.test.compiler>
      </properties>
    </profile>

    <!--
    This profile executes tests coverage for UTs and ITs with Jacoco.
    -->
    <profile>
      <id>coverage</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <argLine>${jacoco.agent.ut.arg}</argLine>
              <!-- Specific to generate mapping between tests and covered code -->
              <properties>
                <property>
                  <name>listener</name>
                  <value>org.sonar.java.jacoco.JUnitListener</value>
                </property>
              </properties>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>${jacoco.version}</version>
            <executions>
              <!-- Prepares a variable, jacoco.agent.ut.arg, that contains the info to be passed to the JVM hosting the code
                   being tested. -->
              <execution>
                <id>prepare-ut-agent</id>
                <phase>process-test-classes</phase>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
                <configuration>
                  <destFile>${sonar.jacoco.reportPath}</destFile>
                  <propertyName>jacoco.agent.ut.arg</propertyName>
                  <append>true</append>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <dependencies>
        <dependency>
          <groupId>org.codehaus.sonar-plugins.java</groupId>
          <artifactId>sonar-jacoco-listeners</artifactId>
          <version>${sonar-jacoco-listeners.version}</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    </profile>

    <!--
    This profile must be added to coverage profile to generate HTML reports.
    -->
    <profile>
      <id>coverage-report</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <argLine>${jacoco.agent.ut.arg}</argLine>
              <!-- Specific to generate mapping between tests and covered code -->
              <properties>
                <property>
                  <name>listener</name>
                  <value>org.sonar.java.jacoco.JUnitListener</value>
                </property>
              </properties>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>${jacoco.version}</version>
            <executions>
              <!-- Prepares a variable, jacoco.agent.ut.arg, that contains the info to be passed to the JVM hosting the code
                   being tested. -->
              <execution>
                <id>prepare-ut-agent</id>
                <phase>process-test-classes</phase>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
                <configuration>
                  <destFile>${sonar.jacoco.reportPath}</destFile>
                  <propertyName>jacoco.agent.ut.arg</propertyName>
                  <append>true</append>
                </configuration>
              </execution>
              <!-- Generates jacoco reports for UTs -->
              <execution>
                <id>generate-jacoco-report</id>
                <phase>verify</phase>
                <goals>
                  <goal>report</goal>
                </goals>
                <configuration>
                  <dataFile>${sonar.jacoco.reportPath}</dataFile>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <dependencies>
        <dependency>
          <groupId>org.codehaus.sonar-plugins.java</groupId>
          <artifactId>sonar-jacoco-listeners</artifactId>
          <version>${sonar-jacoco-listeners.version}</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    </profile>

    <!-- This profile is activated when the project is released. -->
    <profile>
      <id>juzu-release</id>
      <properties>
        <!-- Additional properties to activate the compression of already compressed archives - time expensive -->
        <maven.assembly.recompressZippedFiles>true</maven.assembly.recompressZippedFiles>
        <maven.war.recompressZippedFiles>true</maven.war.recompressZippedFiles>
      </properties>
      <build>
        <plugins>
          <!-- Release with Java 7 -->
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-enforcer-plugin</artifactId>
            <executions>
              <execution>
                <id>enforce-java</id>
                <goals>
                  <goal>enforce</goal>
                </goals>
                <configuration>
                  <rules>
                    <requireJavaVersion>
                      <message>You must release with Java 7!</message>
                      <version>1.7</version>
                    </requireJavaVersion>
                  </rules>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

  </profiles>

</project>
