Changes for page Getting the Wonder Source Code
Last modified by Bastian Triller on 2013/10/05 10:40
From version 175.1
edited by Kieran Kelleher
on 2011/03/25 18:47
on 2011/03/25 18:47
Change comment:
There is no comment for this version
To version 167.1
edited by Kieran Kelleher
on 2010/08/14 19:55
on 2010/08/14 19:55
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -Download Wonder Source, Build ,Installand Upgrade1 +Download Wonder Source, Build and Install - Content
-
... ... @@ -2,84 +2,49 @@ 2 2 3 3 Instead of downloading the Wonder binaries, working from the latest source code directly can have some advantages such as: 4 4 5 -* Learn very much about WebObjects and EOF (and java dev styles?) 6 -* Easily browse and search the source 7 -* Work with a specific svn version (teams, quality control, development cycles) 8 -* Provide opportunities to submit patches for bug fixes or enhancements 5 +* Ability to conveniently browse and search the source code and learn from the wisdom and experience of the WO committers 6 +* Put breakpoints in and step through Wonder source when debugging your projects 7 +* Provide opportunities to submit patches to bugs you might find in Wonder 9 9 * Add logging statements in Wonder source so you can better understand what is going when tracking down hard to find bugs 10 -* Discover themanyHiddenTreasuresofWonder9 +* Work with specific versions of Wonder in a project - good practice for quality control, especially for teams 11 11 12 -== Source FrameworksInitial Installation ==11 +== Downloading Wonder Source from Subversion == 13 13 14 -As of March 25th, 2011, Wonder is maintained on github. So git is what we use to get a local clone of the repository allowing us to directly use Wonder source. 13 +* Open a terminal shell and navigate to the directory where you want to maintain the WonderSource directory and decide on a name of the folder that will contain the Wonder source. For this example, we will use the name //WonderSource// 14 +* Perform initial checkout of Wonder source tree from Subversion head using the following command. This checks out the source into the directory //WonderSource//, automatically creating //WonderSource// if it does not exist. 15 15 16 - Opena terminal and navigate toa directory where you want tomaintain a source "working copy" and just use the following easy-peasy commands to clone Wonder source to your own hard-drive.16 +{{noformat}} 17 17 18 - {{codetitle="CloningProjectfor theFirst Time"}}18 +svn co http://wonder.svn.sourceforge.net/svnroot/wonder/trunk/Wonder WonderSource 19 19 20 -# Clone the source repository from github into a new directory named "WonderSource". 21 -# Note the URL shown here is the public read-only URL. Committers should use the SSH form of the URL for read-write 22 -git clone git://github.com/projectwonder/wonder.git WonderSource 20 +{{/noformat}} 23 23 24 -# Navigate into the working copy root 25 -cd WonderSource 22 +* As often as you prefer you can keep this up to date as follows: 26 26 27 -# Build the frameworks from the source (BTW, they get built into a directory named Roots in your home dir) 28 -ant frameworks 24 +{{noformat}} 29 29 30 -# Install the frameworks (this just copies the built frameworks from ~/Roots to 31 -# the runtime Frameworks directory, usually at /Library/Frameworks) 32 -sudo ant frameworks.install 33 - 34 -{{/code}} 35 - 36 -== Source Frameworks Upgrade Installation == 37 - 38 -Assuming you already cloned and installed Wonder from source using the method outlined above, you can use the following procedure pull the latest changes into your local repository. 39 - 40 -{{code title="Procedure for WebObjects 5.3.X or 5.4.X"}} 41 - 42 -# Navigate to the Roots directory that was automatically created by the initial Source installation procedure above 43 -cd ~/Roots/ 44 - 45 -# Delete all installed frameworks whose names match the built frameworks in this Roots build folder 46 -for FRAMEWORK in `echo *.framework`; do sudo rm -r /Library/Frameworks/${FRAMEWORK}; done 47 - 48 -# Navigate to the original Wonder source directory that you created above during initial source installation 49 49 cd /path/to/WonderSource 27 +svn up 50 50 51 -# Pull the changes you do not have and merge them with your local repository 52 -git pull 29 +{{/noformat}} 53 53 54 -# Clean, build and install the frameworks 55 -ant clean; ant frameworks; sudo ant frameworks.install 31 +== Build and Install Wonder == 56 56 57 - {{/code}}33 +* Follow the "Building with Ant" instructions in the BUILD.txt document in the Wonder directory 58 58 59 -{{in fo}}35 +{{warning title="WebObjects 5.4.X Compatability"}} 60 60 61 - If youhave anytroubleorerrorsduetoyourlocalrepositorygettinghosed,then simply deletetheentirelocalrepositorydirectory, the\~/Rootsdirectoryandjuststartoverusingtheinitialsource cloneandinstallationprocedureoutlinedabove.37 +The default instructions in Wonder's BUILD.txt produce binaries that are compatable with WO 5.3.3. If you are using WO 5.4.X, then you need to add the "-Dwonder.patch=54" option to the ant commands. For example: 62 62 63 - {{/info}}39 +ant \-Dwonder.patch=54 frameworks; sudo ant \-Dwonder.patch=54 frameworks.install 64 64 65 -{{ info value="Custom Development Enviroment File layout usingCustom wolips.properties"}}41 +{{/warning}} 66 66 67 - Ifyou have a custom wolips properties file for a specific workspace and you want to have a specific Wonder clone for that workspace, you can simply link your custom wolipsproperties file to a soft link named build.properties in the working copy root directory. The Wonder build script will supersede all other filesystem layout poperties with the properties in that file.43 +== Concepts == 68 68 69 - Forexample:45 +This complete procedure results in you having 70 70 71 -{code} 72 -$ cd my/special/purpose/clone/of/Wonder 73 -$ ln -s ~/Library/Application\ Support/WOLips/wolips.custom.properties build.properties 74 -{code} 75 - 76 -An example of where this approach might be used would be when you have different projects (perhaps in a specially designated workspace) that use a specific version of WebObjects and a specific version or branch of Wonder. 77 - 78 -*Tip:* Specify a custom build directory for Wonder by adding the property 'wo.external.root' to the custom wolips properties file, for example 79 -{code} 80 -wo.external.root=/Users/mike/Developer/special/directory/Roots 81 -{code} 82 - 83 -*Tip:* A custom WebServer install directory can be specified to Wonder by adding the property 'wo.server.root' to the custom wolips properties file also. 84 - 85 -{{/info}} 47 +* a Wonder directory with the whole Wonder source tree (directories, projects, frameworks, example apps, miscellaneous, etc.) inside. 48 +* The binary Wonder frameworks ("ant frameworks") will be installed in /Library/Frameworks. 49 +* If you ran "ant applications", they will be installed in ... 50 +* If you ran "ant examples", they will be installed in ...