Update of /var/cvs/all/maven-base
In directory james.mmbase.org:/tmp/cvs-serv7434/maven-base
Modified Files:
pom.xml
Log Message:
Improvements for the multiproject build
Kick off a full build inside /maven
See also: http://cvs.mmbase.org/viewcvs/all/maven-base
Index: pom.xml
===================================================================
RCS file: /var/cvs/all/maven-base/pom.xml,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -b -r1.9 -r1.10
--- pom.xml 27 Feb 2009 09:36:44 -0000 1.9
+++ pom.xml 8 Mar 2009 18:12:50 -0000 1.10
@@ -5,31 +5,49 @@
The license (Mozilla version 1.0) can be read at the MMBase site.
See http://www.MMBase.org/license
-Version $Id: pom.xml,v 1.9 2009/02/27 09:36:44 michiel Exp $
+
-->
-<project>
+<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>
<groupId>org.mmbase</groupId>
<artifactId>mmbase-parent</artifactId>
<packaging>pom</packaging>
- <name>MMBase</name>
- <version>1.9</version>
- <description>Base pom for mmbase builds</description>
+ <name>MMBase Parent</name>
+ <version>1.9-SNAPSHOT</version>
+
+ <description>
+ MMBase is a Web Content Management System with strong multi media
features. MMBase has a large
+ installed base in The Netherlands, and is used by major Dutch
broadcasters, publishers,
+ educational institutes, national and local governments. MMBase is written
in Java, it is Open
+ Source Software (MPL) and all standards used are as 'open' as possible.
The system can be used
+ with all major operating systems, webservers and databases.
+ </description>
+ <url>http://www.mmbase.org</url>
+ <inceptionYear>2000</inceptionYear>
+ <organization>
+ <name>MMBase.org</name>
<url>http://www.mmbase.org</url>
+ </organization>
- <!-- don't know yet where this if ro
+ <licenses>
+ <license>
+ <name>Mozilla Public License 1.0 (MPL)</name>
+ <url>http://www.mmbase.org/license</url>
+ </license>
+ </licenses>
+
+ <scm>
+
<connection>scm:cvs:pserver:guest:[email protected]:/var/cvs:mmbase-core</connection>
+
<developerConnection>scm:cvs:ext:cvs.mmbase.org:/var/cvs:mmbase-core</developerConnection>
+ <url>http://cvs.mmbase.org/viewcvs/</url>
+ </scm>
- <modules>
- <module>..</module>
- </modules>
- -->
- <!--
- XML RPC probably not switched on our jira?
<issueManagement>
+ <system>JIRA</system>
<url>http://www.mmbase.org/jira</url>
</issueManagement>
- -->
<ciManagement>
<notifiers>
@@ -41,6 +59,29 @@
</notifiers>
</ciManagement>
+ <prerequisites>
+ <maven>2.0.9</maven>
+ </prerequisites>
+
+ <properties>
+ <compiler.fork>false</compiler.fork>
+
+ <servlet.version>2.4</servlet.version>
+ <jsp.version>2.0</jsp.version>
+ <jstl.version>1.2</jstl.version>
+ <taglib-standard.version>1.1.2</taglib-standard.version>
+
+ <log4j.version>1.2.13</log4j.version>
+
+ <surefire.fork.mode>once</surefire.fork.mode>
+ <surefire.format>brief</surefire.format>
+ <surefire.usefile>false</surefire.usefile>
+ <surefire.fork.vmargs>-ea</surefire.fork.vmargs>
+
<compile.flags>-Xlint:unchecked,deprecation,fallthrough,finally</compile.flags>
+
+ <junit.version>4.4</junit.version>
+ </properties>
+
<mailingLists>
<mailingList>
<name>MMBase User List</name>
@@ -198,56 +239,204 @@
<timezone>1</timezone>
</developer>
</developers>
- <licenses>
- <license>
- <name>Mozilla Public License 1.0 (MPL)</name>
- <url>http://www.mmbase.org/license</url>
- </license>
- </licenses>
- <scm>
-
<connection>scm:cvs:pserver:guest:[email protected]:/var/cvs:mmbase-core</connection>
-
<developerConnection>scm:cvs:ext:cvs.mmbase.org:/var/cvs:mmbase-core</developerConnection>
- <url>http://cvs.mmbase.org/viewcvs/</url>
- </scm>
- <organization>
- <name>MMBase.org</name>
- <url>http://www.mmbase.org</url>
- </organization>
-
-
-
<build>
<defaultGoal>install</defaultGoal>
- <sourceDirectory>${myBasedir}/src</sourceDirectory>
+ <sourceDirectory>src</sourceDirectory>
+
+ <pluginManagement>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
+ <maxmem>256M</maxmem>
+ <fork>${compiler.fork}</fork>
</configuration>
</plugin>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>javacc-maven-plugin</artifactId>
- <version>2.5</version>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <configuration>
+ <encoding>UTF-8</encoding>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.1-alpha-2</version>
+ <configuration>
+ <archiveClasses>true</archiveClasses>
+ <attachClasses>true</attachClasses>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-2</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.mmbase.maven</groupId>
+ <artifactId>assembly-descriptors</artifactId>
+ <version>1.9-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ <version>2.2</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.mmbase.maven</groupId>
+ <artifactId>codestandards</artifactId>
+ <version>1.9-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>checkstyle</groupId>
+ <artifactId>checkstyle</artifactId>
+ <version>4.4</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-velocity</artifactId>
+ <version>1.1.3</version>
+ <exclusions>
+ <exclusion>
+ <!-- Use the version specified by checkstyle:checkstyle
instead -->
+ <artifactId>commons-collections</artifactId>
+ <groupId>commons-collections</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>plexus-utils</artifactId>
+ <groupId>plexus</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <encoding>UTF-8</encoding>
+ </configuration>
<executions>
<execution>
- <id>javacc</id>
+ <id>validate</id>
+ <phase>validate</phase>
+ <configuration>
+ <configLocation>mmbase-checkstyle.xml</configLocation>
+ <consoleOutput>true</consoleOutput>
+ <failsOnError>true</failsOnError>
+ <linkXRef>false</linkXRef>
+
<suppressionsLocation>mmbase-checkstyle-suppressions.xml</suppressionsLocation>
+ <sourceDirectory>src</sourceDirectory>
+ <excludes>**/archetype-resources/**/*.java</excludes>
+ </configuration>
<goals>
- <goal>javacc</goal>
+ <goal>checkstyle</goal>
</goals>
</execution>
</executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <version>2.4</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.mmbase.maven</groupId>
+ <artifactId>codestandards</artifactId>
+ <version>1.9-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
<configuration>
- <sourceDirectory>${myBasedir}/src</sourceDirectory>
+ <rulesets>
+ <ruleset>mmbase-pmd-ruleset.xml</ruleset>
+ <ruleset>mmbase-pmd-custom.xml</ruleset>
+ </rulesets>
+ <sourceEncoding>UTF-8</sourceEncoding>
+ <targetJdk>1.5</targetJdk>
+ <linkXRef>false</linkXRef>
+ <includeTests>true</includeTests>
+ <verbose>true</verbose>
+ <excludeRoots>
+ <excludeRoot>${basedir}/src/main/generated</excludeRoot>
+ </excludeRoots>
</configuration>
+ <executions>
+ <execution>
+ <id>validate</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
</plugin>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <includes>
+ <include>**/*Test.java</include>
+ <include>**/*TestCase.java</include>
+ <include>**/*TestCases.java</include>
+ </includes>
+ <!-- do not exclude **/Abstract*Test.java
**/Abstract*TestCase.java -->
+ <excludes>
+ <exclude>**/*$*</exclude>
+ </excludes>
+ <reportFormat>${surefire.format}</reportFormat>
+ <useFile>${surefire.usefile}</useFile>
+ <forkMode>${surefire.fork.mode}</forkMode>
+ <childDelegation>false</childDelegation>
+ <argLine>${surefire.fork.vmargs}</argLine>
+ <systemProperties>
+ <property>
+ <name>java.awt.headless</name>
+ <value>${java.awt.headless}</value>
+ </property>
+ <property>
+ <name>java.util.logging.config.file</name>
+
<value>${basedir}/target/test-classes/logging.properties</value>
+ </property>
+ <property>
+ <name>surefire.fork.vmargs</name>
+ <value>${surefire.fork.vmargs}</value>
+ </property>
+ </systemProperties>
+ <check>
+ <branchRate>80</branchRate>
+ <lineRate>80</lineRate>
+ <haltOnFailure>true</haltOnFailure>
+ <totalBranchRate>80</totalBranchRate>
+ <totalLineRate>80</totalLineRate>
+ <packageLineRate>80</packageLineRate>
+ <packageBranchRate>80</packageBranchRate>
+ </check>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-release-plugin</artifactId>
+ <configuration>
+ <tagBase>svn://[username[:passwo...@]cvs.mmbase.org/tags</tagBase>
+ <useReleaseProfile>false</useReleaseProfile>
+ <preparationGoals>clean install</preparationGoals>
+ <goals>deploy</goals>
+ <arguments>-Prelease,deploy</arguments>
+ <autoVersionSubmodules>true</autoVersionSubmodules>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
+ <attach>true</attach>
+ <quiet>true</quiet>
+ <bottom>MMBase.org</bottom>
<links>http://java.sun.com/j2se/1.5.0/docs/api/</links>
<source>1.5</source>
<tags>
@@ -335,29 +524,106 @@
</tags>
</configuration>
</plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-resources-plugin</artifactId>
- <configuration>
- <encoding>UTF-8</encoding>
- </configuration>
- </plugin>
</plugins>
+ </pluginManagement>
</build>
+
+ <dependencyManagement>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
- <version>2.4</version>
+ <version>${servlet.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
- <version>2.0</version>
+ <version>${jsp.version}</version>
<scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>jstl</artifactId>
+ <version>${jstl.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>taglibs</groupId>
+ <artifactId>standard</artifactId>
+ <version>${taglib-standard.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>${log4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>3.1</version>
+ <exclusions>
+ <exclusion>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>1.1.1</version>
+ <exclusions>
+ <exclusion>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>logkit</groupId>
+ <artifactId>logkit</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>avalon-framework</groupId>
+ <artifactId>avalon-framework</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ <version>2.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-fileupload</groupId>
+ <artifactId>commons-fileupload</artifactId>
+ <version>1.0</version>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>jsp-api</artifactId>
+ </dependency>
</dependencies>
<distributionManagement>
@@ -392,9 +658,157 @@
</repository>
</repositories>
+ <profiles>
+ <profile>
+ <id>fastinstall</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
<properties>
- <mmbase.version>1.9-SNAPSHOT</mmbase.version>
- <myBasedir>${basedir}</myBasedir>
+ <maven.test.skip>true</maven.test.skip>
</properties>
+ </profile>
+
+ <profile>
+ <id>sourcecheck</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <showDeprecation>true</showDeprecation>
+ <showWarnings>true</showWarnings>
+ <compilerArgument>${compile.flags}</compilerArgument>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>metrics</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>coverage</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>cobertura-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>clean</goal>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+
+ <profile>
+ <id>release</id>
+ <build>
+ <plugins>
+ <plugin>
+ <inherited>true</inherited>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>2.4</version>
+ <configuration>
+ <updateReleaseInfo>true</updateReleaseInfo>
+ </configuration>
+ </plugin>
+ <!-- We want to sign the artifact, the POM, and all attached
artifacts -->
+ <plugin>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <configuration>
+ <passphrase>${gpg.passphrase}</passphrase>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>enforce-no-snapshots</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <requireReleaseVersion>
+ <message>No Snapshots Allowed!</message>
+ </requireReleaseVersion>
+ </rules>
+ <fail>true</fail>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>deploy</id>
+ <build>
+ <defaultGoal>deploy</defaultGoal>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-source-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-sources</id>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-javadocs</id>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs