![]() ![]() | ||
| Home>>>>> | ||
mavenMaven build tool. Like ant, but also keeps versions of 'artifacts' or jars. Using Maven 2 to build a new projectI am following the maven in 5 minutes guide. After installing use 'mvn' instead of 'maven' to to use it. Verify the installation is OK by running 'mvn --version' Auto generate your pommvn archetype:create -DgroupId=com.magicmonster -DartifactId=test-app This will create a 'test-app' directory IN the direct you run this from. It won't work if you have an existing 'test-app' directory This is annoying if you have already created your files, so I moved the pom.xml up a level and will remove the src and test directories later. mvn packageI ran 'mvn package' but this is wrong because I wanted to create a webapp not a jar. I have opened up pom.xml, and changed the packaging element to a 'war' instead of 'jar'. The very short guide to webapps says when using archetype:create we could have specified -DarchetypeArtifactId=maven-archetype-webapp add web.xml for webappmaven complained about a missing web.xml. By default maven will look for it in src/main/webapp/WEB-INF/web.xml so I have moved it there. Move all jsp and static files to src/main/webapp too, then they will appear in the war file. cleaning buildrun "maven clean package" src code dirMove your java code to src/main/java otherwise it will not be compiled. 1.5 not supportedI was receiving errors for generics are not supported in -source 1.3 for-each loops are not supported in -source 1.3 To fix add
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
to pom.xml. I'm not sure why I need to configure the plugin this way.. wouldn't the compiler come with my project by default? Missing dependenciesThis is much like maven 1. To download spring frame work add the following dependency into the pom.xml
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.0.6</version>
</dependency>
Dependency scope is specified in the pom.xml. You have more options now Dependencies of dependencies are automatically used now. Executing javaAs part of my build I have a java program that needs executing. I found a plugin called antrun . The antrun usage guide helps if you already know ant. I have set this to execute during the 'generate-sources' phase. A list of phases can be found at the lifecycle guide. I am not sure which one is good to use. classpaths can be 'exported' the the ant builder using instructions found under Referencing the maven classpaths . | ||