Version 22.1 by Greg.Brown on 2009/03/23 13:41

Hide last authors
Lachlan Deck 20.1 1 Building instructions are in the file BUILD.txt at the top level of the svn checkout.
2
3 https:~/~/wonder.svn.sourceforge.net/svnroot/wonder/trunk/Wonder/BUILD.txt
4
5 {{note}}
6 These Maven built directory frameworks are slightly different than the ant built directory frameworks. For example, the Ajax framework has dependencies on json, and the ant built Ajax.framework includes a jabsorb-1.2.2.jar, whereas the Maven built Ajax.framework does not include this jabsorb-1.2.2.jar. This is, of course, because Maven dependencies are detailed in the pom.xml, and will be pulled in via standard Maven mechanisms. The frameworks are not interchangeable--at least without manipulating dependencies. There are also a different number of frameworks.
7
8 {{/note}}
9
10 Currently (February 2009) the wonder frameworks, applications, etc, can be built for WebObjects 5.3.x or 5.4.x; the choice is made by using a "profile" which has the value of wo53 or wo54, e.g.:
11
12 {{code}}
13
14 mvn clean install -P wo54
15
16 {{/code}}
17
Greg.Brown 22.1 18 This installs NSJarBundle frameworks for WebObjects 5.4.x into your ,,/.m2/repository, some of which appear in your local repository with the wo54 qualifier:,,
Lachlan Deck 20.1 19
20 {{code}}
21
22 ./repository/wonder/core/ERExtensions/5.0.0-SNAPSHOT/ERExtensions-5.0.0-SNAPSHOT-wo54.jar
23
24 {{/code}}
25
Greg.Brown 22.1 26 and most frameworks are the same for either version of WebObjects, and have nor need any qualifier.
Lachlan Deck 20.1 27
Greg.Brown 22.1 28 To utilize these NSJarBundle frameworks in a Maven Wonder supported project, one must add the correct dependency, and this will depend on which profile you want to link to. This is done by a maven "classifier", which is used to select the correct qualifier. A qualifier is part of the basic artifact coordinate system:
Lachlan Deck 20.1 29
Greg.Brown 22.1 30 <major version>.<minor version>.<incremental version>-<qualifier>
Lachlan Deck 20.1 31
Greg.Brown 22.1 32 For ERExtensions, this is: 5 . 0 . 0-SNAPSHOT - wo54; which selects the correct dependency for WebObjects 5.4.x. In the pom dependencies section this would be
Lachlan Deck 20.1 33
34 {{code value="xml"}}
Greg.Brown 22.1 35
36 <dependency>
37 <groupId>wonder.core</groupId>
38 <artifactId>ERExtensions</artifactId>
39 <version>5.0.0-SNAPSHOT</version>
40 <classifier>wo54</classifier>
41 </dependency>
Lachlan Deck 20.1 42
43 {{/code}}
44
Greg.Brown 22.1 45
Lachlan Deck 20.1 46
Greg.Brown 22.1 47 You should also know that although the WebObjects and Wonder frameworks can work with the NSJarBundle framework jars, Eclipse will instead will use the classes which are pulled into the "target" directory by Maven.
48
49 See also the woapplication-archetype ( [[http://wiki.objectstyle.org/confluence/display/WOL/woapplication-archetype]] ) which can create wonder supported applications or frameworks which utilize the maven standard project layout.