Skip to content
Snippets Groups Projects
pom.xml 13.4 KiB
Newer Older
<?xml version="1.0" encoding="UTF-8"?>

<!--
 *
 * See the NOTICE file distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software 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
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
 *
-->

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
Vincent Massol's avatar
Vincent Massol committed
    <groupId>org.xwiki.platform</groupId>
    <artifactId>xwiki-platform</artifactId>
    <version>4.1-SNAPSHOT</version>
  <artifactId>xwiki-platform-core</artifactId>
  <name>XWiki Platform - Core - Parent POM</name>
  <packaging>pom</packaging>
  <description>XWiki Platform - Core - Parent POM</description>
    <gwt.version>2.4.0</gwt.version>
    <gwt.maven.plugin.version>2.4.0</gwt.maven.plugin.version>
    <smartgwt.version>3.0</smartgwt.version>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit-dep</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>jmock</groupId>
      <artifactId>jmock</artifactId>
      <version>1.2.0</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>jmock</groupId>
      <artifactId>jmock-cglib</artifactId>
      <version>1.2.0</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.jmock</groupId>
      <artifactId>jmock-junit4</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
Thomas Mortagne's avatar
Thomas Mortagne committed
  <dependencyManagement>
    <dependencies>
Thomas Mortagne's avatar
Thomas Mortagne committed
      <!-- Standard dependencies used in several modules -->
Thomas Mortagne's avatar
Thomas Mortagne committed
      <!-- Groovy engine -->
      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>1.8.6</version>
Thomas Mortagne's avatar
Thomas Mortagne committed
      </dependency>
      <!-- Jython engine -->
      <dependency>
        <groupId>org.python</groupId>
        <artifactId>jython-standalone</artifactId>
        <version>2.5.2</version>
      <!-- JFreeChart -->
      <dependency>
        <groupId>org.jfree</groupId>
        <artifactId>jfreechart</artifactId>
        <version>1.0.14</version>
      <!-- Used on remote observation and also by JBossCache/Infinispan (even if it does not really use it) -->
      <dependency>
        <groupId>org.jgroups</groupId>
        <artifactId>jgroups</artifactId>
        <version>3.0.9.Final</version>
      </dependency>
      <!-- Standard dependencies used in GWT modules -->
      <dependency>
        <groupId>com.google.gwt</groupId>
        <artifactId>gwt-user</artifactId>
        <version>${gwt.version}</version>
        <!-- Only needed at build time -->
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>com.google.gwt</groupId>
        <artifactId>gwt-servlet</artifactId>
        <version>${gwt.version}</version>
      </dependency>
      <dependency>
        <!-- SmartGWT is used only for its tree widget. -->
        <!-- If you remove or move this dependency don't forget to update the repository section at the bottom. -->
        <groupId>com.smartgwt</groupId>
        <artifactId>smartgwt</artifactId>
        <version>${smartgwt.version}</version>
        <!-- Only needed at build time -->
        <scope>provided</scope>
Thomas Mortagne's avatar
Thomas Mortagne committed
    </dependencies>
  </dependencyManagement>
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <configuration>
            <archive>
              <!-- Use the manifest file generated by the OSGi Maven Bundle Plugin -->
              <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
            </archive>
          </configuration>
        </plugin>
          <groupId>org.xwiki.commons</groupId>
          <artifactId>xwiki-commons-tool-xar-plugin</artifactId>
          <version>${commons.version}</version>
        <plugin>
          <!-- Default configuration for the GWT maven plugin -->
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>gwt-maven-plugin</artifactId>
          <version>${gwt.maven.plugin.version}</version>
          <!-- We declare these dependencies here in case we use different value for ${gwt.version} and
               ${gwt.maven.plugin.version} variables.
               See http://mojo.codehaus.org/gwt-maven-plugin/user-guide/using-different-gwt-sdk-version.html -->
          <dependencies>
            <dependency>
              <groupId>com.google.gwt</groupId>
              <artifactId>gwt-user</artifactId>
              <version>${gwt.version}</version>
            </dependency>
            <dependency>
              <groupId>com.google.gwt</groupId>
              <artifactId>gwt-dev</artifactId>
              <version>${gwt.version}</version>
            </dependency>
          </dependencies>
          <configuration>
            <mode>htmlunit</mode>
            <testTimeOut>600</testTimeOut>
          </configuration>
          <executions>
            <execution>
              <goals>
                <goal>test</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <configuration>
            <!--
              We exclude the GWT client tests because of http://jira.codehaus.org/browse/SUREFIRE-508 (Cannot run
              GWTTestCases with Surefire). GWT client tests are currently run by gwt-maven-plugin.
            -->
            <excludes>
              <exclude>**/gwt/**/client/**/*.java</exclude>
            </excludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>com.atlassian.maven.plugins</groupId>
          <artifactId>maven-clover2-plugin</artifactId>
          <configuration>
            <!--
              Exclude GWT client code since otherwise it would mean they would get instrumented by Clover and GWT would
              complain that it doesn't find the sources for Clover at runtime.
            -->
            <excludes>
              <exclude>**/gwt/**/client/**/*.java</exclude>
            </excludes>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <!-- Generate OSGi Manifest information to all XWiki Core JARs -->
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <executions>
          <execution>
            <id>bundle-manifest</id>
            <phase>process-classes</phase>
            <goals>
              <goal>manifest</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>clirr-maven-plugin</artifactId>
        <configuration>
          <excludes>
            <exclude>**/internal/**</exclude>
            <!-- Remove the following exclude after the 4.0 final release and the update of clirr.previous.version -->
            <exclude>org/xwiki/query/Query</exclude>
            <!-- Remove the following excludes after we release the current version as final -->
            <exclude>com/xpn/xwiki/doc/merge/MergeUtils</exclude>
            <exclude>org/xwiki/gwt/wysiwyg/client/diff/**</exclude>
            <exclude>org/xwiki/gwt/wysiwyg/client/plugin/sync/**</exclude>
            <exclude>org/xwiki/gwt/wysiwyg/client/Images</exclude>
            <exclude>org/xwiki/gwt/wysiwyg/client/Strings</exclude>
            <exclude>org/xwiki/wysiwyg/server/plugin/sync/**</exclude>
            <exclude>com/xpn/xwiki/objects/ObjectInterface</exclude>
            <exclude>com/xpn/xwiki/util/Util</exclude>
            <exclude>com/xpn/xwiki/XWiki</exclude>
            <exclude>com/xpn/xwiki/XWiki*</exclude>
            <exclude>com/xpn/xwiki/api/XWiki</exclude>
            <exclude>com/xpn/xwiki/api/XWikiCompatibilityAspect</exclude>
            <exclude>com/xpn/xwiki/objects/BaseElement</exclude>
            <exclude>com/xpn/xwiki/plugin/PluginApi</exclude>
          </excludes>
        </configuration>
      </plugin>
      <!-- Needed to add support for the "xar" packaging -->
        <groupId>org.xwiki.commons</groupId>
        <artifactId>xwiki-commons-tool-xar-handlers</artifactId>
        <version>${commons.version}</version>
  <modules>
Vincent Massol's avatar
Vincent Massol committed
    <!-- Sorted Alphabetically -->
    <module>xwiki-platform-action</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-activitystream</module>
    <module>xwiki-platform-administration</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-annotations</module>
    <module>xwiki-platform-application-manager</module>
    <module>xwiki-platform-appwithinminutes</module>
    <module>xwiki-platform-blog</module>
    <module>xwiki-platform-bridge</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-cache</module>
    <module>xwiki-platform-captcha</module>
    <module>xwiki-platform-chart</module>
    <module>xwiki-platform-classloader</module>
    <module>xwiki-platform-colibri</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-component</module>
    <module>xwiki-platform-configuration</module>
    <module>xwiki-platform-containers</module>
    <module>xwiki-platform-crypto</module>
    <module>xwiki-platform-csrf</module>
    <module>xwiki-platform-dashboard</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-eventstream</module>
    <module>xwiki-platform-extension</module>
    <module>xwiki-platform-faq</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-formula</module>
    <module>xwiki-platform-groovy</module>
    <module>xwiki-platform-gwt</module>
    <module>xwiki-platform-invitation</module>
    <module>xwiki-platform-ircbot</module>
    <module>xwiki-platform-jodatime</module>
    <module>xwiki-platform-ldap</module>
    <module>xwiki-platform-linkchecker</module>
    <module>xwiki-platform-livetable</module>
    <module>xwiki-platform-mailsender</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-messagestream</module>
    <module>xwiki-platform-model</module>
    <module>xwiki-platform-observation</module>
    <module>xwiki-platform-office</module>
    <module>xwiki-platform-oldcore</module>
    <module>xwiki-platform-panels</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-query</module>
    <module>xwiki-platform-refactoring</module>
    <module>xwiki-platform-rendering</module>
    <module>xwiki-platform-rest</module>
    <module>xwiki-platform-scheduler</module>
    <module>xwiki-platform-search</module>
    <module>xwiki-platform-security</module>
    <module>xwiki-platform-selenium</module>
    <module>xwiki-platform-skin</module>
    <module>xwiki-platform-statistics</module>
    <module>xwiki-platform-store</module>
    <module>xwiki-platform-tag</module>
    <module>xwiki-platform-test</module>
    <module>xwiki-platform-toucan</module>
    <module>xwiki-platform-user</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-url</module>
    <module>xwiki-platform-velocity</module>
    <module>xwiki-platform-watchlist</module>
tmortagne's avatar
tmortagne committed
    <module>xwiki-platform-web</module>
    <module>xwiki-platform-webdav</module>
    <module>xwiki-platform-wiki-manager</module>
    <module>xwiki-platform-workspace</module>
    <module>xwiki-platform-wysiwyg</module>
Vincent Massol's avatar
Vincent Massol committed
    <module>xwiki-platform-xml</module>
    <module>xwiki-platform-xmlrpc</module>
    <module>xwiki-platform-zipexplorer</module>
    <!-- Profile to build Legacy modules -->
      <modules>
        <module>xwiki-platform-legacy</module>
      </modules>
    </profile>
      <!-- Allows running GWT tests manually -->
      <id>gwt-test-manual</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>gwt-maven-plugin</artifactId>
            <configuration>
              <mode>manual</mode>
              <productionMode>true</productionMode>
              <style>DETAILED</style>
              <!-- HACK: We inject the GWT arguments in the out parameter because we have no other option. -->
              <out>target/www-test -port 54321 -codeServerPort 12345</out>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>