Changes for page WOProject-Maven

Last modified by Ulrich Köster on 2011/08/20 20:03

From version 43.1
edited by Quinton Dolan
on 2007/02/23 01:24
Change comment: There is no comment for this version
To version 64.1
edited by Henrique Prange
on 2006/10/01 18:36
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.qdolan
1 +XWiki.hprange
Content
... ... @@ -3,19 +3,72 @@
3 3  == WOProject Maven2 Plugins ==
4 4  
5 5  * [[maven-japplication-plugin]]: A Maven plugin for assembling native launchers of Java applications for a number of OS platforms.
6 -* [[maven-wobootstrap-plugin]]
7 -* [[maven-wolifecycle-plugin]]
6 +* [[maven-woproject-plugin]]
8 8  * Maven2 WebObjects Archetypes
9 9  ** [[maven-archetype-woapplication]]
10 10  
11 11  == Getting Started ==
12 12  
13 -It makes take more then five minutes to get you started but it's worth to take the ride. [[Guided Maven Example]]
12 +* Install [[Maven2>>http://maven.apache.org]] on a local machine.
13 +* Add ObjectStyle Maven2 repository to the project POM //(we may distribute the plugins via Ibiblio at some point too)//. E.g.:
14 14  
15 -== Building woproject with maven ==
15 +{{code title="pom.xml"}}
16 16  
17 -[[Building the woproject source code with maven]]
17 +<pluginRepositories>
18 + <pluginRepository>
19 + <id>objectstyle</id>
20 + <name>ObjectStyle Public Maven2 repo</name>
21 + <url>http://objectstyle.org/maven2</url>
22 + <layout>default</layout>
23 + <snapshots>
24 + <enabled>true</enabled>
25 + <updatePolicy>daily</updatePolicy>
26 + <checksumPolicy>ignore</checksumPolicy>
27 + </snapshots>
28 + <releases>
29 + <enabled>true</enabled>
30 + </releases>
31 + </pluginRepository>
32 +...
33 +</pluginRepositories>
18 18  
19 -== Building wonder with maven ==
35 +{{/code}}
20 20  
21 -[[Building the wonder source code with maven]]
37 +* Plugins are bound to the build lifecycle via "project/build/plugins" section of the POM. Here is a general example, for more details see documentation of individual plugins:
38 +
39 +{{code title="pom.xml"}}
40 +
41 +<build>
42 + <plugins>
43 + <plugin>
44 + <groupId>org.objectstyle.woproject.maven2</groupId>
45 +
46 + plugin specific information goes here...
47 +
48 + </plugin>
49 + </plugins>
50 +</build>
51 +
52 +{{/code}}
53 +
54 +{{info title="Useful Information"}}
55 +
56 +By default, Maven will search the groupId org.apache.maven.plugins for prefix-to-artifactId mappings for the plug-ins it needs to perform a given build. However, WOProject maven plug-ins belong to a different group: *org.objectstyle.woproject.maven2*. Since the Maven project is assumed to have control over the default plug-in groupId, we can configure Maven to search other groupId locations for plugin-prefix mappings.
57 +
58 +In the Maven settings file (per-user: ~/.m2/settings.xml; global: $M2_HOME/conf/settings.xml), you can provide a custom pluginGroups section, listing the plugin groupIds you want to search (each groupId goes in its own pluginGroup sub-element). For example, if your projects use a WOProject maven plug-in, you might have the following in your settings:
59 +
60 +{code:xml|title=settings.xml}
61 +<settings>
62 +...
63 + <pluginGroups>
64 + <pluginGroup>org.objectstyle.woproject.maven2</pluginGroup>
65 + </pluginGroups>
66 +...
67 +</settings>
68 +{code}
69 +
70 +Now you can directly execute plug-ins, i.e. *mvn woproject:goal* instead of *mvn org.objectstyle.woproject.maven2:maven-woproject-plugin:goal*.
71 +
72 +Reference: http://maven.apache.org/guides/introduction/introduction-to-plugin-prefix-mapping.html.
73 +
74 +{{/info}}