Changes for page Using WOLips With Multiple Versions of WebObjects
Last modified by D Tim Cummings on 2022/07/27 02:24
From version 67.1
edited by David Avendasora
on 2011/06/13 01:30
on 2011/06/13 01:30
Change comment:
There is no comment for this version
To version 72.1
edited by ted_archibald
on 2015/02/20 00:15
on 2015/02/20 00:15
Change comment:
Migrated to Confluence 5.3
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. avendasora1 +XWiki.ted_archibald - Content
-
... ... @@ -2,26 +2,25 @@ 2 2 3 3 ==== Create New Directory Structure ==== 4 4 5 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245674441767.png?version=10||align="centre"]]5 +[[image:attach:media_1245674441767.png]] 6 6 7 -The first thing we need to do is to create a new directory structure to allow for multiple versions of WebObjects to be installed in. This new directory structure basically creates a new root level that WOLips will look in for all frameworks used by a given project or workspace. This directory structure can be anything you wish. For demonstration purposes, I'm going to create it under the ##/Developer##directory.7 +The first thing we need to do is to create a new directory structure to allow for multiple versions of WebObjects to be installed in. This new directory structure basically creates a new root level that WOLips will look in for all frameworks used by a given project or workspace. This directory structure can be anything you wish. For demonstration purposes, I'm going to create it under the {{code language="none"}}/Developer{{/code}} directory. 8 8 9 -Create: ##/Developer/WebObjects/Versions/##9 +Create: {{code language="none"}}/Developer/WebObjects/Versions/{{/code}} 10 10 11 11 ==== Download WOInstaller.jar ==== 12 12 13 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245677004032.png?version=10||align="centre"]]13 +[[image:attach:media_1245677004032.png]] 14 14 15 -We now need to download the ##WOInstaller.jar##file from##[[http://webobjects.mdimension.com/wolips/]]##and save it into the##Versions/##directory we just created.15 +We now need to download the {{code language="none"}}WOInstaller.jar{{/code}} file from [[http:~~/~~/wocommunity.org/documents/tools/WOInstaller.jar>>url:http://wocommunity.org/documents/tools/WOInstaller.jar||shape="rect"]]{{code language="none"}}{{/code}} and save it into the {{code language="none"}}Versions/{{/code}} directory we just created. 16 16 17 17 ==== Use WOInstaller.jar to download WebObjects ==== 18 18 19 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245678323686.png?version=10||align="centre"]]19 +[[image:attach:media_1245678323686.png]] 20 20 21 21 Open Terminal.app and run one of the following commands: 22 22 23 23 {{noformat}} 24 - 25 25 java -jar /Developer/WebObjects/Versions/WOInstaller.jar 5.3.3 /Developer/WebObjects/Versions/WebObjects533 26 26 java -jar /Developer/WebObjects/Versions/WOInstaller.jar 5.4.3 /Developer/WebObjects/Versions/WebObjects543 27 27 ... ... @@ -31,33 +31,30 @@ 31 31 32 32 ==== Installed Versions ==== 33 33 34 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245679408792.png?version=10||align="centre"]]33 +[[image:attach:media_1245679408792.png]] 35 35 36 36 When the script has finished downloading, your directory should look something like this. At this point you could rename the directory to something like MyCustomer or MyProject. For this demonstration we'll just leave it named as is. 37 37 38 38 ==== Open Eclipse / WOLips ==== 39 39 40 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245679819648.png?version=10||align="centre"]]39 +[[image:attach:media_1245679819648.png]] 41 41 42 -You need to launch Eclipse and WOLips at least once so that it will create the default ##wolips.properties##file in##/Library/Application Support/WOLips/##.41 +You need to launch Eclipse and WOLips at least once so that it will create the default {{code language="none"}}wolips.properties{{/code}} file in {{code language="none"}}~/Library/Application Support/WOLips/{{/code}}. If you've already been using WOlips, you can skip this step. 43 43 44 44 {{note title="Note"}} 45 - 46 -Feb 12, 2010: At least with WOLips 3.4.5830, launching Eclipse/WOLips is not sufficient to get it to create the default {{wolips.properties}}. You need to create a project; a new WebObjects Application project will do nicely. 47 - 44 +Feb 12, 2010: At least with WOLips 3.4.5830, launching Eclipse/WOLips is not sufficient to get it to create the default {{code language="none"}}wolips.properties{{/code}}. You need to create a project; a new WebObjects Application project will do nicely. 48 48 {{/note}} 49 49 50 -==== Make a copy of the default ##wolips.properties##file ====47 +==== Make a copy of the default {{code language="none"}}wolips.properties{{/code}} file ==== 51 51 52 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245680007266.png?version=10||align="centre"]]53 -Select the ##wolips.properties##file and make a copy of it. Then rename the copy to be##wolips.yourversion.properties##. In reality, you can rename it however you'd like (for example:##wolips.properties.533##or##533.wolips.properties##), but I find that putting the version number in the middle (e.g.##wolips.533.properties##) will keep all the different versions together, and will not mess with the extension mapping.49 +[[image:attach:media_1245680007266.png]] 50 +Select the {{code language="none"}}wolips.properties{{/code}} file and make a copy of it. Then rename the copy to be {{code language="none"}}wolips.yourversion.properties{{/code}}. In reality, you can rename it however you'd like (for example: {{code language="none"}}wolips.properties.533{{/code}} or {{code language="none"}}533.wolips.properties{{/code}}), but I find that putting the version number in the middle (e.g. {{code language="none"}}wolips.533.properties{{/code}}) will keep all the different versions together, and will not mess with the extension mapping. 54 54 55 -==== Modify your new ##wolips.533.properties##file to point to your newly downloaded version of WebObjects ====52 +==== Modify your new {{code language="none"}}wolips.533.properties{{/code}} file to point to your newly downloaded version of WebObjects ==== 56 56 57 -As an example, if you downloaded WebObjects 5.3.3 into ##/Developer/WebObjects/Versions/WebObjects533##, then modify your new##wolips.533.properties##file as follows (substituting your username for##bubba##, of course):54 +As an example, if you downloaded WebObjects 5.3.3 into {{code language="none"}}/Developer/WebObjects/Versions/WebObjects533{{/code}}, then modify your new {{code language="none"}}wolips.533.properties{{/code}} file as follows (substituting your username for {{code language="none"}}bubba{{/code}}, of course): 58 58 59 59 {{noformat}} 60 - 61 61 wo.network.root=/Network 62 62 wo.system.root=/Developer/WebObjects/Versions/WebObjects533/System 63 63 wo.local.root=/Developer/WebObjects/Versions/WebObjects533 ... ... @@ -79,61 +79,58 @@ 79 79 80 80 ==== Configure Eclipse to use your newly installed version of WebObjects ==== 81 81 82 -Eclipse needs to be able to reference your ##wolips.533.properties##file, so that it can locate all the resources needed in order to build and to run your projects.78 +Eclipse needs to be able to reference your {{code language="none"}}wolips.533.properties{{/code}} file, so that it can locate all the resources needed in order to build and to run your projects. 83 83 84 84 Here you have two options: 85 85 86 -* you can set a workspace-wide preference to use a particular ##wolips.properties##file87 -* you can configure an individual project to use a particular ##wolips.properties##file82 +* you can set a workspace-wide preference to use a particular {{code language="none"}}wolips.properties{{/code}} file 83 +* you can configure an individual project to use a particular {{code language="none"}}wolips.properties{{/code}} file 88 88 89 -Neither approach is without its problems. 85 +Neither approach is without its problems. Read on... 90 90 91 -===== Option 1 - Configure the Eclipse workspace to reference your new ##wolips.properties##file =====87 +===== Option 1 - Configure the Eclipse workspace to reference your new {{code language="none"}}wolips.properties{{/code}} file ===== 92 92 93 -[[image: http://wiki.objectstyle.org/confluence/download/attachments/5275708/media_1245680796194.png?version=10||align="centre"]]89 +[[image:attach:media_1245680796194.png]] 94 94 95 -With this option, we're telling the Eclipse/WOLips internal incremental builder to reference a specific ##wolips.properties##file for the entire workspace (rather than using the default, which is##$HOME/Library/Application Support/WOLips/wolips.properties##).91 +With this option, we're telling the Eclipse/WOLips internal incremental builder to reference a specific {{code language="none"}}wolips.properties{{/code}} file for the entire workspace (rather than using the default, which is {{code language="none"}}$HOME/Library/Application Support/WOLips/wolips.properties{{/code}}). And by doing this, we're implicitly telling Eclipse which installation of WebObjects we want it to use. 96 96 97 -To change this setting, go to the "Eclipse" menu, select "Preferences", open the "WOLips" preference group, then select "Build". ##wolips.properties##file.##$HOME/Library/Application Support/WOLips/##directory.93 +To change this setting, go to the "Eclipse" menu, select "Preferences", open the "WOLips" preference group, then select "Build". Enter the name of your new {{code language="none"}}wolips.properties{{/code}} file. Note that this can be either an absolute or relative filename. Relative filenames are relative to your {{code language="none"}}$HOME/Library/Application Support/WOLips/{{/code}} directory. 98 98 99 -Although in some cases you can get WOLips to use your new ##wolips.properties##via a Clean/Rebuild, or by closing/reopening your project, it's probably wise to just restart Eclipse, to make sure the change is "refreshed" for all your open projects.95 +Although in some cases you can get WOLips to use your new {{code language="none"}}wolips.properties{{/code}} via a Clean/Rebuild, or by closing/reopening your project, it's probably wise to just restart Eclipse, to make sure the change is "refreshed" for all your open projects. And then a Clean/Rebuild may also be in order. 100 100 101 101 Eclipse/WOLips will also use this setting to find the referenced resources at runtime, i.e. when your run your project from within Eclipse. 102 102 103 103 {{note title="Note"}} 100 +This setting currently affects only the Eclipse //internal// builder - it will not influence external builds with Ant. That is, when you build your project (e.g. for deployment) using any of the following: 104 104 105 - Thissettingcurrentlyaffectsonly the Eclipse _internal_ builder - itwill not influence external builds with Ant. That is, whenyou build your project (e.g. for deployment)using any of the following:106 - -Ctrl-click {{build.xml}}\-> Run As\-> Ant Build107 - -WOLips Ant Tools\-> Install108 - -build with Ant from the command line102 +(% class="alternate" %) 103 +* Ctrl-click {{code language="none"}}build.xml{{/code}} -> Run As -> Ant Build 104 +* WOLips Ant Tools -> Install 105 +* build with Ant from the command line 109 109 110 -...this setting will not affect where Ant looks for the various resources specified by the settings in your alternate {{wolips.properties}}. 107 +...this setting will not affect where Ant looks for the various resources specified by the settings in your alternate {{code language="none"}}wolips.properties{{/code}}. 111 111 112 -In order to configure Ant so that it can find your {{wolips.properties}}\-specified resources, you'll need to use Option 2, below. 113 - 109 +In order to configure Ant so that it can find your {{code language="none"}}wolips.properties{{/code}}-specified resources, you'll need to use Option 2, below. 114 114 {{/note}} 115 115 116 -===== Option 2 - Configure your project to reference your new ##wolips.properties##file =====112 +===== Option 2 - Configure your project to reference your new {{code language="none"}}wolips.properties{{/code}} file ===== 117 117 118 -[[image:build.properties.png ||align="centre"]]114 +[[image:attach:build.properties.png]] 119 119 120 -Currently, the Eclipse Ant builder is not controlled by the "WOLips > Build" setting in Eclipse's Preferences. In order to build with Ant, you first need to tell Ant where to find your WebObjects installation and other resources. ##build.xml##(which is created by WOLips when you create a new WebObjects application project), reads and uses the properties found in your##$HOME/Library/Application Support/WOLips/wolips.properties##file.##wolips.properties##file by adding a line like the following to your project's##build.properties##file:116 +Currently, the Eclipse Ant builder is not controlled by the "WOLips -> Build" setting in Eclipse's Preferences. In order to build with Ant, you first need to tell Ant where to find your WebObjects installation and other resources. Your project's default Ant buildfile, {{code language="none"}}build.xml{{/code}} (which is created by WOLips when you create a new WebObjects application project), reads and uses the properties found in your {{code language="none"}}$HOME/Library/Application Support/WOLips/wolips.properties{{/code}} file. But you can specify a different {{code language="none"}}wolips.properties{{/code}} file by adding a line like the following to your project's {{code language="none"}}build.properties{{/code}} file: 121 121 122 122 {{noformat}} 123 - 124 124 wolips.properties=/Users/bubba/Library/Application Support/WOLips/wolips.533.properties 125 125 126 126 {{/noformat}} 127 127 128 128 {{note}} 124 +Note that for now (as of WOLips version 3.4.5830), this really must be an absolute, fully-qualified filepath; if you were to specify a relative filename, Eclipse/WOLips would treat it as being relative to {{code language="none"}}$HOME/Library/Application Support/WOLips{{/code}}, but Ant (using the default {{code language="none"}}build.xml{{/code}}) would treat it as being relative to your project's base folder. 129 129 130 -Note that for now (as of WOLips version 3.4.5830), this really must be an absolute, fully-qualified filepath; if you were to specify a relative filename, Eclipse/WOLips would treat it as being relative to {{$HOME/Library/Application Support/WOLips}}, but Ant (using the default {{build.xml}}) would treat it as being relative to your project's base folder. 131 - 132 -Also, you might think you could use an Ant variable specification such as $\{user.home\} on the right hand side -- but you can't. The problem is that while Ant would interpret this correctly, Eclipse/WOLips will not. Also note that you can't in any case use a tilde character as an abbreviation for your home directory. 133 - 126 +Also, you might think you could use an Ant variable specification such as ${user.home} on the right hand side – but you can't. The problem is that while Ant would interpret this correctly, Eclipse/WOLips will not. Also note that you can't in any case use a tilde character as an abbreviation for your home directory. 134 134 {{/note}} 135 135 136 -If you specify a ##wolips.properties##setting this way, it will override the workspace-wide WOLips preference setting.129 +If you specify a {{code language="none"}}wolips.properties{{/code}} setting this way, it will override the workspace-wide WOLips preference setting. 137 137 138 138 Eclipse will also use this setting to find resources at runtime, i.e. when you run your project from within Eclipse. 139 139 ... ... @@ -141,28 +141,26 @@ 141 141 142 142 If you want to build your project with Ant from the command line, you need to tell Ant two things: 143 143 144 -===== (1) The location of the WOLips ##woproject.jar##file: =====137 +===== (1) The location of the WOLips {{code language="none"}}woproject.jar{{/code}} file: ===== 145 145 146 -You can do this either via the ##lib##parameter to the##ant##command, e.g.139 +You can do this either via the {{code language="none"}}-lib{{/code}} parameter to the {{code language="none"}}ant{{/code}} command, e.g. 147 147 148 148 {{noformat}} 149 - 150 150 ant -lib /path/to/woproject.jar 151 151 152 152 {{/noformat}} 153 153 154 -or by putting a copy of ##woproject.jar##someplace where Ant will find it.##$HOME/.ant/lib##folder:146 +or by putting a copy of {{code language="none"}}woproject.jar{{/code}} someplace where Ant will find it. A convenient location for it is your {{code language="none"}}$HOME/.ant/lib{{/code}} folder: 155 155 156 156 {{noformat}} 157 - 158 158 mkdir -p ~/.ant/lib 159 159 cp -p /Applications/eclipse-3.4.2/plugins/org.objectstyle.wolips.woproject.ant_3.4.5830/lib/woproject.jar ~/.ant/lib 160 160 161 161 {{/noformat}} 162 162 163 -===== (2) The location of your ##wolips.properties##file: =====154 +===== (2) The location of your {{code language="none"}}wolips.properties{{/code}} file: ===== 164 164 165 -If you already specified this in your ##build.properties##(as per Option 2, above), then you're done.##D<property>=<value>##command line option to set the value of the##wolips.properties##Ant property to be the path to your##wolips.properties##file.##wolips.properties##property during the course of processing your##build.xml##.156 +If you already specified this in your {{code language="none"}}build.properties{{/code}} (as per Option 2, above), then you're done. But perhaps you have no interest in building with Ant from within Eclipse, but only want to be able to do Ant builds from the command line. If that's the case, then you can use Ant's {{code language="none"}}-D<property>=<value>{{/code}} command line option to set the value of the {{code language="none"}}wolips.properties{{/code}} Ant property to be the path to your {{code language="none"}}wolips.properties{{/code}} file. Ant will read and process the file specified by the {{code language="none"}}wolips.properties{{/code}} property during the course of processing your {{code language="none"}}build.xml{{/code}}. Again, this path specification can be absolute or relative; but if it's relative, Ant will interpret it as being relative to your project's base folder. 166 166 167 167 Example: 168 168 ... ... @@ -170,4 +170,4 @@ 170 170 $ ant -Dwolips.properties=/Users/bubba/Library/Application\ Support/WOLips/wolips.533.properties clean build 171 171 {{/noformat}} 172 172 173 -As above, you cannot use a tilde character as an abbreviation for your home directory (but you in fact //could// use an environment variable such as ##$HOME##the shell would expand it before passing it to ant).164 +As above, you cannot use a tilde character as an abbreviation for your home directory (but you in fact //could// use an environment variable such as {{code language="none"}}$HOME{{/code}} - the shell would expand it before passing it to ant).