Changes for page Debugging WOLips

Last modified by Pascal Robert on 2012/02/11 05:22

From version 68.1
edited by Pascal Robert
on 2012/02/11 05:22
Change comment: There is no comment for this version
To version 66.1
edited by mark_ritchie
on 2009/09/14 02:05
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.probert
1 +XWiki.mark_ritchie
Content
... ... @@ -1,10 +1,10 @@
1 -= Debugging WOLips as the master does =
1 += Debugging WOLips as the master does! =
2 2  
3 -These instructions is intended for the developer who wants to compile and run WOLips source for the purpose of debugging or other exploration. Thanks very much to Mike Schrag for the guidance to get this setup and working
3 +These instructions is intended for the developer who wants to compile and run WOLips source for the purpose of debugging or other exploration. Thanks very much to Mike Schrag for the guidance to get this setup and working!
4 4  
5 5  == Overview of what's going on ==
6 6  
7 -We're going to check out the latest source for WOLips, build it and arrange for Eclipse to launch is a debug mode to test it out. It's very handy that Eclipse has a built in ability to launch itself in debug mode and load the local versions of the plugins. If you read the old and out dated instructions floating about that talk about building an entire release and installing them into a new copy of Eclipse then you're going to like this method a whole lot better ;-)
7 +We're going to check out the latest source for WOLips, build it and arrange for Eclipse to launch is a debug mode to test it out. It's very handy that Eclipse has a built in ability to launch itself in debug mode and load the local versions of the plugins. If you read the old and out dated instructions floating about that talk about building an entire release and installing them into a new copy of Eclipse then you're going to like this method a whole lot better! ;-)
8 8  
9 9  == The setup ==
10 10  
... ... @@ -16,27 +16,23 @@
16 16  
17 17  {{panel title="Snow Leopard Update" bgColor="#FFFFCE"}}
18 18  
19 -I gave this a go on Snow Leopard and it worked ok however there were a few problems which I've detailed near the end of this document.
19 +I gave this a go on Snow Leopard and it worked fine with one little detail which I've noted at the end of this page.
20 20  Here's the setup I was using:
21 -- Mac OS X 10.6.2
22 -- WebObjects 5.4.3
21 +- Mac OS X 10.6.1
23 23  - Java 1.6.0_15
24 -- Eclipse 3.4.2 Build id: M20090211-1700 (eclipse-SDK-3.4.2-macosx-carbon.tar.gz)
25 -- woproject svn repository version 6031
26 -- Wonder svn repository version 10655
27 -YMMV\!
23 +- Eclipse 3.4.2 (eclipse-SDK-3.4.2-macosx-carbon.tar.gz)
28 28  
29 29  {{/panel}}
30 30  
31 31  == Checking out the source code ==
32 32  
33 -**A note for the impatient - don't try to checkout the source right into Eclipse. The files aren't structured in a way that allows this to work. I know because I tried to do it that way first** ;-)
29 +**A note for the impatient - don't try to checkout the source right into Eclipse. The files aren't structured in a way that allows this to work. I know because I tried to do it that way first!** ;-)
34 34  
35 35  === Check out the source code into a local folder ===
36 36  
37 37  You're checking out a local copy of the code from the source repository. Next, we're going to selectively import (but **not** copy) parts of that code into Eclipse. I'm using command line subversion to check out the lastest version however feel free to use a different tool or different version, as you like.
38 38  
39 -git clone [[git://github.com/wolips/wolips.git]] /woproject
35 +svn co https:~/~/svn.objectstyle.org/repos/woproject/trunk/woproject ,,/woproject,,
40 40  
41 41  Note that I've checked out the source code into my home folder. It doesn't matter where you put the source code as long as you can find it in the steps below.
42 42  
... ... @@ -45,8 +45,8 @@
45 45  Launch a clean copy of Eclipse with no plugings installed. Strictly speaking, probably not necessary however these are the steps which I took.
46 46  
47 47  Create a new Workspace
48 -I chose /WOLipsDebugging
49 -[[image:Workspace.png]]
44 +I chose ,,/WOLipsDebugging
45 +[[image:Workspace.png]],,
50 50  
51 51  === Import woenvironment ===
52 52  
... ... @@ -63,13 +63,13 @@
63 63  [[image:woenvironmentProject.png]]
64 64  Click Finish.
65 65  
66 -Once Eclipse has finished building the project, there should be no errors If that's not the case, then you need to back up and make sure that you've followed all the steps above.
62 +Once Eclipse has finished building the project, there should be no errors! If that's not the case, then you need to back up and make sure that you've followed all the steps above.
67 67  
68 68  === Import wolips projects into your workspace ===
69 69  
70 -Repeat the steps above and import all the wolips projects except for 3
71 -EntityModler, eomodeldoc and org.objectstyle.wolips.eomodeler.factories
72 -are special projects which require special setup and caffination before touching.
66 +Repeat the steps above and import all the wolips projects except for 3!
67 +**EntityModler, eomodeldoc and org.objectstyle.wolips.eomodeler.factories
68 +Are special projects which require special setup and caffination before touching.**
73 73  
74 74  The import of wolips should look like this:
75 75  [[image:wolipsImport.png]]
... ... @@ -116,25 +116,12 @@
116 116  
117 117  These projects require additional resources to compile. As I didn't need them, I just closed them.
118 118  
115 +* org.objectstyle.wolips.apple.mavenintegration
119 119  * org.objectstyle.wolips.groovy.ui
120 120  * org.objectstyle.wolips.jprofiler.launching
121 -* org.objectstyle.wolips.jrebel
122 -* org.objectstyle.wolips.mechanic
123 123  
124 -=== Error message: Libraries not found for JavaEOAccess and other WebObjects libraries ===
119 +== The run configuration setup ==
125 125  
126 -A couple projects have been committed to the repository with references to WebObjects libraries in /Library/WebObjects/lib. You'll need to update these to the correct location on your machine. If you've done nothing special to your WebObjects environment then this should be something like: /System/Library/Frameworks
127 -If you've done something else then you'll need to change the library locations (or perhaps update your WOLips properties file.)
128 -
129 -=== Error message: Cannot find artifact for parent POM... ===
130 -
131 -When building woenvironment, you might hit this error:
132 -Cannot find artifact for parent POM: org.objectstyle.woproject:woproject-all-parent::2.1 for project org.objectstyle.woproject.ant:woenvironment:jar:2.1-SNAPSHOT at /Users/...
133 -
134 -The simple solution is delete the pom.xml file. Full details are here: [[http://wiki.objectstyle.org/confluence/display/WOL/mail/6259075]]
135 -
136 -== The configuration setup ==
137 -
138 138  At this point, you should have a long list of packages which should all be compiling.
139 139  If that's not the case, please document additional steps here, making special note of your setup.
140 140  
... ... @@ -157,12 +157,12 @@
157 157  
158 158  Click the Debug button in the debug configuration window to launch the test version.
159 159  This will be a clean version of Eclipse with the workspace which you set and any other settings.
160 -By default, all of the plugins are loaded and ready for testing
161 -And now, you should be running inside the debug version of Eclipse with all the wolips bits to play with
143 +By default, all of the plugins are loaded and ready for testing!
144 +And now, you should be running inside the debug version of Eclipse with all the wolips bits to play with!
162 162  
163 163  == Snow Leopard Update ==
164 164  
165 -I was running the carbon version of Eclipse 3.4.2 Build id: M20090211-1700 on Snow Leopard 10.6.2
148 +I was running the carbon version of Eclipse 3.4.2 on Snow Leopard.
166 166  Up to this point, I was following the instructions above however when I tried to launch Eclipse, I got this error:
167 167  
168 168  {{code value="java"}}
... ... @@ -174,20 +174,11 @@
174 174  
175 175  {{/code}}
176 176  
177 -This is a known problem and is documented here: [[http://www.eclipse.org/swt/faq.php#cocoa32launch]]
178 -The fix is to add the d32 parameter to the launch arguments.
160 +This is a known problem and is documented <a href="http:~/~/www.eclipse.org/swt/faq.php#cocoa32launch">here</a>
161 +The fix is to add the --d32 parameter to the launch arguments.--
179 179  
180 -Original: os $target.os} ws $target.ws} arch $target.arch} nl $target.nl}
181 -Updated: os $target.os} ws $target.ws} arch $target.arch} nl $target.nl} d32
163 +Original: --os $target.os} --ws $target.ws} --arch $target.arch} --nl $target.nl}
164 +Updated: --os $target.os} --ws $target.ws} --arch $target.arch} --nl $target.nl} --d32--
182 182  
183 -A second problem which I encountered was running out of memory while running test version of Eclipse
184 -I had to add the VM argument "-Xmx2G" and then 'Run' as opposed to 'Debug' the app. For the most part, that worked.
185 -
186 186  My final setup looked like this:
187 -[[image:32Bit_jvm_2GB_mem.png]]
188 -
189 -== There was more than one SQL reverse engineer factory defined. ==
190 -
191 -[[image:MoreThenOneReverseEngineeringFactory.png]]
192 -This exception occurs when you've forgotten to close the org.objectstyle.wolips.eomodeler.factories project.
193 -The fix is to close the project. Thanks to Mike Schrag for putting me on the right path when I was at my wits end with this damn problem.
167 +[[image:32Bit_jvm_arguments.png]]