[infinispan-commits] Infinispan SVN: r263 - trunk.
infinispan-commits at lists.jboss.org
infinispan-commits at lists.jboss.org
Tue May 12 10:12:23 EDT 2009
Author: manik.surtani at jboss.com
Date: 2009-05-12 10:12:23 -0400 (Tue, 12 May 2009)
New Revision: 263
Modified:
trunk/README-Maven.txt
trunk/pom.xml
Log:
Updated readme + moved assembly to a separate profile
Modified: trunk/README-Maven.txt
===================================================================
--- trunk/README-Maven.txt 2009-05-12 13:56:16 UTC (rev 262)
+++ trunk/README-Maven.txt 2009-05-12 14:12:23 UTC (rev 263)
@@ -23,20 +23,26 @@
* mvn package: Packages the module as a JAR file, the resulting JAR file will be in target/
-* mvn package -Dmaven.test.skip=true: Creates a JAR file without running tests.
+* mvn package -Dmaven.test.skip.exec=true: Creates a JAR file without running tests.
-* mvn package -P Docs: Packages the module as a JAR file, and builds the javadocs and user documentation from docbook sources.
+* mvn install: will install the artifacts in your local repo for use by other projects/modules.
-* mvn install: will install the artifacts in your local repo for use by other projects. Will also use Maven's assembly plugin to build ZIP files for download (in target/distribution)
+* mvn install -P distribution: In addition to install, will also use Maven's assembly plugin to build ZIP files for distribution (in target/distribution)
* mvn deploy: will build and deploy the project to the JBoss snapshots repository. Note that you should have your WebDAV
username and password set up. (Deploys snapshots to http://snapshots.jboss.org/maven2/org/infinispan). If you have
a non-SNAPSHOT version number in your pom.xml, it will be deployed to the live releases repository (see below)
-* mvn clean site -Ptest-functional,codeCoverage: will run all tests in the test-functional profile and generate code
- coverage reports using EMMA.
+Other notes:
+------------
+* Running mvn clean, compile and test also works if run within a single module rather than just the root
+* Run mvn install -Dmaven.test.skip.exec=true to ensure snapshots are available for inter-module dependencies
+
+* Run mvn idea:idea or mvn eclipse:eclipse to set up your IDE
+
+
1.2. Setting up your WebDAV username and password to deploy project snapshots
-----------------------------------------------------------------------------
@@ -142,31 +148,25 @@
$ mvn surefire-report:report-only
-2.3. Executing different groups
--------------------------------
-A group can be executed (using the default configuration) by simply using the appropriate profile, like so:
-
- $ mvn -P test-jgroups test
-
-2.4. Executing a single test
+2.3. Executing a single test
----------------------------
A single test can be executed using the test property. The value is the short name (not the fully qualified package name)
of the test.
- $ mvn -P test-XXX -Dtest=FqnTest test
+ $ mvn -Dtest=FqnTest test
Alternatively, if there is more than one test with a given classname in your test suite, you could provide the path to
the test.
- $ mvn -P test-XXX -Dtest=org/infinispan/api/MixedModeTest test
+ $ mvn -Dtest=org/infinispan/api/MixedModeTest test
-2.5. Executing all tests in a given package
+2.4. Executing all tests in a given package
--------------------------------------------
This can be achieved by passing in the package name with a wildcard to the test parameter.
- $ mvn -P test-XXX -Dtest=org/infinispan/api/* test
+ $ mvn -Dtest=org/infinispan/api/* test
-2.6. Skipping the test run
+2.5. Skipping the test run
--------------------------
It is sometimes desirable to install the jboss cache package in your local repository without performing a full test run.
To do this, simply use the maven.test.skip.exec property:
@@ -174,10 +174,9 @@
$ mvn -Dmaven.test.skip.exec=true install
Again, this is just a shortcut for local use. It SHOULD NEVER BE USED when releasing. Also, make sure "exec" is included
-in the property, if not the tests will not be built, which will prevent a test jar being produced (POJO Cache needs the
-Core Cache test jar).
+in the property, if not the tests will not be built, which will prevent a test jar being produced.
-2.7. Permutations
+2.6. Permutations
-----------------
We use the term permutation to describe a group execution against a particular config. This allows us to test a variety
of environments and configurations without rewriting the same basic test over and over again. For example, the jgroups-tcp
@@ -191,7 +190,7 @@
permutation can be executed per mvn command. So automating multiple runs requires shell scripting, or some other execution
framework to make multiple called to maven.
-2.8. Running permutations manually or in an IDE
+2.7. Running permutations manually or in an IDE
-----------------------------------------------
Sometimes you want to run a test using settings other than the defaults (such as UDP for "jgroups" group tests or the
@@ -208,7 +207,7 @@
Please refer to the POM file for more properties and permutations.
-2.9. Integration with Hudson
+2.8. Integration with Hudson
----------------------------
Hudson should do the following:
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2009-05-12 13:56:16 UTC (rev 262)
+++ trunk/pom.xml 2009-05-12 14:12:23 UTC (rev 263)
@@ -30,17 +30,23 @@
<module>gui-demo</module>
</modules>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <links>
- <link>http://java.sun.com/j2se/1.5.0/docs/api/</link>
- <link>http://java.sun.com/javaee/5/docs/api/</link>
- </links>
- <footer><![CDATA[
+ <profiles>
+ <profile>
+ <id>distribution</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <configuration>
+ <links>
+ <link>http://java.sun.com/j2se/1.5.0/docs/api/</link>
+ <link>http://java.sun.com/javaee/5/docs/api/</link>
+ </links>
+ <footer><![CDATA[
<!-- Google Analytics -->
<script type='text/javascript'>
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
@@ -52,99 +58,101 @@
pageTracker._trackPageview();
} catch(err) {}</script>
]]></footer>
- </configuration>
- <executions>
- <execution>
- <id>javadoc</id>
- <phase>package</phase>
- <goals>
- <goal>aggregate</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <version>1.3</version>
- <executions>
- <execution>
- <id>create-consolidated-jar</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <tasks>
- <!-- this is a dependency of single_jar assembly -->
- <mkdir dir="target"/>
- <zip destfile="target/infinispan-all.jar">
- <fileset dir="cachestore/bdbje/target/classes"/>
- <fileset dir="cachestore/jdbc/target/classes"/>
- <fileset dir="cachestore/s3/target/classes"/>
- <fileset dir="cachestore/jdbm/target/classes"/>
- <fileset dir="core/target/classes"/>
- <fileset dir="tree/target/classes"/>
- </zip>
- </tasks>
</configuration>
- </execution>
- <execution>
- <id>remove-dot-ignore</id>
- <phase>pre-integration-test</phase>
- <goals>
- <goal>run</goal>
- </goals>
+ <executions>
+ <execution>
+ <id>javadoc</id>
+ <phase>package</phase>
+ <goals>
+ <goal>aggregate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.3</version>
+ <executions>
+ <execution>
+ <id>create-consolidated-jar</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks>
+ <!-- this is a dependency of single_jar assembly -->
+ <mkdir dir="target"/>
+ <zip destfile="target/infinispan-all.jar">
+ <fileset dir="cachestore/bdbje/target/classes"/>
+ <fileset dir="cachestore/jdbc/target/classes"/>
+ <fileset dir="cachestore/s3/target/classes"/>
+ <fileset dir="cachestore/jdbm/target/classes"/>
+ <fileset dir="core/target/classes"/>
+ <fileset dir="tree/target/classes"/>
+ </zip>
+ </tasks>
+ </configuration>
+ </execution>
+ <execution>
+ <id>remove-dot-ignore</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks>
+ <property name="file"
+ value="${project.build.directory}/distribution/${artifactId}-${project-version}-single_jar.zip"/>
+ <zip destfile="${file}.new">
+ <zipfileset src="${file}">
+ <exclude name="**/.ignore/**"/>
+ </zipfileset>
+ </zip>
+ <move file="${file}.new" tofile="${file}"/>
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build-test-jar</id>
+ <phase>none</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-3</version>
+ <executions>
+ <execution>
+ <id>assemble</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
<configuration>
- <tasks>
- <property name="file"
- value="${project.build.directory}/distribution/${artifactId}-${project-version}-single_jar.zip"/>
- <zip destfile="${file}.new">
- <zipfileset src="${file}">
- <exclude name="**/.ignore/**"/>
- </zipfileset>
- </zip>
- <move file="${file}.new" tofile="${file}"/>
- </tasks>
+ <descriptors>
+ <descriptor>src/main/resources/assemblies/single_jar.xml</descriptor>
+ <descriptor>src/main/resources/assemblies/bin.xml</descriptor>
+ <descriptor>src/main/resources/assemblies/all.xml</descriptor>
+ <descriptor>src/main/resources/assemblies/src.xml</descriptor>
+ </descriptors>
+ <finalName>${artifactId}-${project-version}</finalName>
+ <outputDirectory>target/distribution</outputDirectory>
+ <workDirectory>target/assembly/work</workDirectory>
</configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>build-test-jar</id>
- <phase>none</phase>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-beta-3</version>
- <executions>
- <execution>
- <id>assemble</id>
- <phase>package</phase>
- <goals>
- <goal>single</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <descriptors>
- <descriptor>src/main/resources/assemblies/single_jar.xml</descriptor>
- <descriptor>src/main/resources/assemblies/bin.xml</descriptor>
- <descriptor>src/main/resources/assemblies/all.xml</descriptor>
- <descriptor>src/main/resources/assemblies/src.xml</descriptor>
- </descriptors>
- <finalName>${artifactId}-${project-version}</finalName>
- <outputDirectory>target/distribution</outputDirectory>
- <workDirectory>target/assembly/work</workDirectory>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
More information about the infinispan-commits
mailing list