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>
<groupId>org.xwiki.platform</groupId>
<artifactId>xwiki-platform</artifactId>
<version>5.0-SNAPSHOT</version>
<artifactId>xwiki-platform-core</artifactId>
<name>XWiki Platform - Core - Parent POM</name>
<packaging>pom</packaging>
<description>XWiki Platform - Core - Parent POM</description>
Marius Dumitru Florea
committed
<properties>
<gwt.version>2.5.0-rc1</gwt.version>
<gwt.maven.plugin.version>2.5.0-rc1</gwt.maven.plugin.version>
<smartgwt.version>3.0</smartgwt.version>
<!-- JS/CSS minification is on by default -->
<xwiki.minification.skip>false</xwiki.minification.skip>
Marius Dumitru Florea
committed
</properties>
<dependencies>
<dependency>
<groupId>org.xwiki.commons</groupId>
<artifactId>xwiki-commons-test-component</artifactId>
<version>${commons.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- Standard dependencies used in several modules -->
Thomas Mortagne
committed
<!-- Jython engine -->
<dependency>
<groupId>org.python</groupId>
<artifactId>jython-standalone</artifactId>
Thomas Mortagne
committed
</dependency>
<!-- 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>
<!-- Apache Tika used by Lucene and Office modules -->
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-parsers</artifactId>
<exclusions>
<exclusion>
<!-- Includes classes from an older version of NekoHTML preventing us from using newer versions. -->
<groupId>de.l3s.boilerpipe</groupId>
<artifactId>boilerpipe</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Rome is used in rss macro and feed api modules and in Tika -->
<dependency>
<groupId>rome</groupId>
<artifactId>rome</artifactId>
<version>1.0</version>
<!-- Exclude JDOM since Rome depends on jdom:jdom and we want to use org.jdom:jdom -->
<exclusion>
<groupId>jdom</groupId>
<artifactId>jdom</artifactId>
</exclusion>
Vincent Massol
committed
<!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging-api</artifactId>
</exclusion>
</dependency>
<dependency>
<groupId>rome</groupId>
<artifactId>rome-fetcher</artifactId>
<version>1.0</version>
<!-- Exclude JDOM since Rome depends on jdom:jdom and we want to use org.jdom:jdom -->
<exclusions>
<exclusion>
<groupId>jdom</groupId>
<artifactId>jdom</artifactId>
</exclusion>
<!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
Vincent Massol
committed
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging-api</artifactId>
</exclusion>
</exclusions>
<dependency>
<!-- Replace the runtime transitive dependency we excluded above with this one which repackages the NekoHTML classes to prevent conflicts. -->
<groupId>de.l3s.boilerpipe</groupId>
<artifactId>boilerpipe</artifactId>
<version>1.2.0-xwiki</version>
<scope>runtime</scope>
</dependency>
<!-- Used by several projects (HTMLCleaner, Formula renderer, etc.) directly or indirectly to do XPath and XSLT transformations -->
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.7.1</version>
</dependency>
<!-- Used by xwiki-platform-oldcore and xwiki-platform-captcha -->
<dependency>
<groupId>struts</groupId>
<artifactId>struts</artifactId>
<version>1.2.9</version>
<exclusions>
<!-- There is conflict with hibernate antlr-2.7.6 dependency -->
<exclusion>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
</exclusion>
<!-- We use a more recent version of Xalan (see above) -->
<exclusion>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
</exclusion>
<!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
Marius Dumitru Florea
committed
<!-- Standard dependencies used in GWT modules -->
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${gwt.version}</version>
Vincent Massol
committed
<!-- Only needed at build time -->
<scope>provided</scope>
Marius Dumitru Florea
committed
</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>
Vincent Massol
committed
<!-- Only needed at build time -->
<scope>provided</scope>
Marius Dumitru Florea
committed
</dependency>
<!-- Used at least in Solr Search and in Infinispan Cache -->
<dependency>
<groupId>org.codehaus.woodstox</groupId>
<artifactId>woodstox-core-asl</artifactId>
<version>4.1.4</version>
</dependency>
<!-- Drawn by several transitive dependencies -->
<dependency>
<groupId>javax.transaction</groupId>
<artifactId>jta</artifactId>
<version>1.1</version>
</dependency>
<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>
<plugin>
<groupId>org.xwiki.commons</groupId>
<artifactId>xwiki-commons-tool-xar-plugin</artifactId>
<version>${commons.version}</version>
</plugin>
Marius Dumitru Florea
committed
<plugin>
<!-- Default configuration for the GWT maven plugin -->
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>${gwt.maven.plugin.version}</version>
Vincent Massol
committed
<!-- 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>
Marius Dumitru Florea
committed
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
<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>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<skip>${xwiki.minification.skip}</skip>
<jswarn>false</jswarn>
<!-- Overwrite the resource files with the minimized version. -->
<nosuffix>true</nosuffix>
</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>
<!-- List of specific CLIRR excludes. Example:
<difference>
<className>org/xwiki/ircbot/IRCBot</className>
<method>void initialize(java.lang.String)</method>
<differenceType>7012</differenceType>
<justification>IRCBot is still a young API. Added a new initialize() method to support installing the
IRC Bot application in a subwiki</justification>
</difference>
Eduard Moraru
committed
See http://mojo.codehaus.org/clirr-maven-plugin/examples/ignored-differences.html
Vincent Massol
committed
<ignored>
<!-- Remove the following ignores after we release the current version as final -->
<difference>
<className>com/xpn/xwiki/XWiki</className>
<method>com.xpn.xwiki.XWikiContext ajc$privMethod$com_xpn_xwiki_XWikiCompatibilityAspect$com_xpn_xwiki_XWiki$getXWikiContext()</method>
<differenceType>7002</differenceType>
<justification>
* The XWikiCompatibilityAspect aspect class had a method (flushCache()) calling the private getXWikiContext() method from XWiki.java
* This private method has been removed from XWiki.java
* AspectJ needs to add a public proxy method in XWiki.java (it names it: public XWikiContext ajc$privMethod$com_xpn_xwiki_XWikiCompatibilityAspect$com_xpn_xwiki_XWiki$getXWikiContext())
so that it can call it from XWikiCompatiblityAspect.class with:
public static void ajc$interMethod$com_xpn_xwiki_XWikiCompatibilityAspect$com_xpn_xwiki_XWiki$flushCache(XWiki ajc$this_)
{
ajc$this_.flushCache(ajc$this_.ajc$privMethod$com_xpn_xwiki_XWikiCompatibilityAspect$com_xpn_xwiki_XWiki$getXWikiContext());
}
* Thus we need to exclude it now that we've removed this getXWikiContext() ;)
</justification>
Vincent Massol
committed
</ignored>
<excludes>
<exclude>**/internal/**</exclude>
Vincent Massol
committed
<exclude>**/test/**</exclude>
<!-- Remove the following excludes after we release the current version as final -->
<!-- Remove dependency on Portlet API from old core -->
<exclude>com/xpn/xwiki/web/XWikiForm</exclude>
<exclude>com/xpn/xwiki/web/XWikiPortlet</exclude>
<exclude>com/xpn/xwiki/web/XWikiPortletContext</exclude>
<exclude>com/xpn/xwiki/web/XWikiPortletRequest</exclude>
<exclude>com/xpn/xwiki/web/XWikiPortletResponse</exclude>
<exclude>com/xpn/xwiki/web/XWikiPortletURLFactory</exclude>
<exclude>com/xpn/xwiki/web/XWikiRequest</exclude>
<exclude>com/xpn/xwiki/web/XWikiResponse</exclude>
<exclude>com/xpn/xwiki/web/XWikiServletRequest</exclude>
<exclude>com/xpn/xwiki/web/XWikiServletRequestStub</exclude>
<exclude>com/xpn/xwiki/web/XWikiServletResponse</exclude>
<exclude>com/xpn/xwiki/web/XWikiServletResponseStub</exclude>
<exclude>com/xpn/xwiki/gwt/api/server/XWikiRequestWrapper</exclude>
<exclude>com/xpn/xwiki/plugin/scheduler/XWikiServletRequestStub</exclude>
<exclude>com/xpn/xwiki/plugin/scheduler/XWikiServletResponseStub</exclude>
</excludes>
</configuration>
</plugin>
<extensions>
Vincent Massol
committed
<!-- Needed to add support for the "xar" packaging -->
<extension>
<groupId>org.xwiki.commons</groupId>
<artifactId>xwiki-commons-tool-xar-handlers</artifactId>
<version>${commons.version}</version>
</extension>
</extensions>
<!-- Sorted Alphabetically -->
<module>xwiki-platform-activitystream</module>
<module>xwiki-platform-administration</module>
<module>xwiki-platform-application-manager</module>
Marius Dumitru Florea
committed
<module>xwiki-platform-appwithinminutes</module>
<module>xwiki-platform-autotag</module>
<module>xwiki-platform-blog</module>
<module>xwiki-platform-bridge</module>
<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>
<module>xwiki-platform-colorthemes</module>
<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>
Vincent Massol
committed
<module>xwiki-platform-dashboard</module>
Marius Dumitru Florea
committed
<module>xwiki-platform-display</module>
<module>xwiki-platform-extension</module>
<module>xwiki-platform-feed</module>
<module>xwiki-platform-groovy</module>
<module>xwiki-platform-gwt</module>
Vincent Massol
committed
<module>xwiki-platform-index</module>
<module>xwiki-platform-invitation</module>
<module>xwiki-platform-ircbot</module>
Vincent Massol
committed
<module>xwiki-platform-jira</module>
<module>xwiki-platform-jodatime</module>
<module>xwiki-platform-ldap</module>
<module>xwiki-platform-linkchecker</module>
<module>xwiki-platform-livetable</module>
<module>xwiki-platform-logging</module>
<module>xwiki-platform-mailsender</module>
<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>
<module>xwiki-platform-query</module>
<module>xwiki-platform-refactoring</module>
<module>xwiki-platform-rendering</module>
<module>xwiki-platform-repository</module>
<module>xwiki-platform-scheduler</module>
<module>xwiki-platform-search</module>
<module>xwiki-platform-security</module>
<module>xwiki-platform-selenium</module>
Marius Dumitru Florea
committed
<module>xwiki-platform-sheet</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-user</module>
Jean-Vincent Drean
committed
<module>xwiki-platform-uiextension</module>
<module>xwiki-platform-url</module>
<module>xwiki-platform-velocity</module>
<module>xwiki-platform-watchlist</module>
<module>xwiki-platform-webdav</module>
<module>xwiki-platform-wiki-manager</module>
<module>xwiki-platform-workspace</module>
Marius Dumitru Florea
committed
<module>xwiki-platform-wysiwyg</module>
<module>xwiki-platform-xml</module>
<module>xwiki-platform-xmlrpc</module>
<module>xwiki-platform-zipexplorer</module>
</modules>
<profiles>
<!-- Profile to build Legacy modules -->
<modules>
<module>xwiki-platform-legacy</module>
</modules>
</profile>
<profile>
<!-- Allows running GWT tests manually -->
<id>gwt-test-manual</id>
Marius Dumitru Florea
committed
<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>
Marius Dumitru Florea
committed
</configuration>
</plugin>
</plugins>
</build>
</profile>
</project>