Maven is a Java project management and project comprehension tool. Maven is based on the concept of a project object model (POM) in that all the artifacts produced by Maven are a result of consulting a well defined model for your project. Builds, documentation, source metrics, and source cross-references are all controlled by your POM.
http://maven.apache.org/
Mevenide is an
eclipse plugin, to intsall use eclipse updater
http://mevenide.codehaus.org/release/eclipse/update/site.xmlBetter Builds with Maven
http://www.mergere.com/m2book_download.jsp
maven mirrors
To pull down the mirror to a local server:
rsync -v -t -l -r ftp.ibiblio.org::maven2 m2mirror
To make your environment point to a mirror create a settings.xml file:
<!-- !!!IMPORTANT!!! this file must be copyied to ${user.dir}/.m2/settings.xml,
otherwise the build will not function properly-->
<settings 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/settings-1.0.0.xsd">
<localRepository>c:/.m2/repository</localRepository> <mirrors>
<mirror>
<id>fmer-repo</id>
<name>PlanetMirror Australia</name>
<url>
http://granite:8888/m2mirror</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
</settings>
Copying Project Dependencies
http://maven.apache.org/plugins/maven-dependency-plugin/
see also maven-artifact-manager
Project dependencies are the dependencies declared in your pom. To copy them with their transitive dependencies, use the dependency:copy-dependencies mojo and configure the plugin like the sample below:
<project>
[...]
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>dependency-maven-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
<!-- ${project.build.directory}/WebContent/WEB-INF/lib-->
WebContent/WEB-INF/lib
</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>
true
</overWriteSnapshots>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
[...]
</project>
Customizing A Module URI
http://maven.apache.org/plugins/maven-ear-plugin/examples/customizing-module-uri.html
Guide to using Eclipse with Maven 2.x
http://maven.apache.org/guides/mini/guide-ide-eclipse.html
maven, tomcat, eclipse, WTP
http://confluence.atlassian.com/display/JIRACOM/Development+Environment+with+WTP+Tomcat+Maven2
Creating skinny wars
http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html
Maven2, Eclipse Callisto with WTP and Subclipse working together
http://www.stephan-schwab.com/2006/07/30/1154279400000.html