Re: WOLips Ant build ignoring wolips.properties

From: Andrew R. Kinnie (akinni..ac.com)
Date: Tue Oct 19 2010 - 21:22:47 UTC

  • Next message: Kieran Kelleher (JIRA): "[OS-JIRA] Created: (WOL-1184) Restore the ability to select a container tag and all of its enclosed contents"

    As it happens, I think Dave A. brought this up because of the 6,598 problems I have been having over the last several weeks trying to set up my new iMac as my build and prod server for the small web site I developed for a comedy club. (posted on WO-dev and WO-Depolyment depending on the issue)

    The app worked fine on my laptop (which was set up to run in dev through apache). When I got the new iMac, I copied the data from a Time Machine backup. This copied my apps and workspace. I deleted the old workspaces and tried to set up what I thought was a fairly plain vanilla box, with my App project, My skin framework and the wonder source in my workspace, except:
    1. as I was going to be using it as a dev box and a server, I did not want the libraries installed into /Library/Frameworks, but rather wanted a custom directory.
    2. I also wanted to separate out Wonder from WO.

    I therefore created a custom directory for WO and another for Wonder. I created a custom wolips.properties file and eventually I managed to get the app to run in dev, after stupid amounts of help by Pascal, Chuck, David A, David H, Paul Yu, Travis Britt, and probably 7 or 8 other people. Eventually, it became clear that I needed to install the Wonder Frameworks into one of the Frameworks directories I set in my custom wolips.properties file, i.e. basically, in the WO /Library/Frameworks folder. I ended up having to do this via manually copying the binaries, and fixing various permissions issues. But my Dev setup worked.

    Then I tried to deploy.

    [insert more days and days of all nighters and crazy amounts of help form 5-10 people here]. The app could deploy, and would run, until I tried to use D2W, when I got weird exceptions claiming there was a missing class. Apparently I was building from trunk instead of 5.4 version of Wonder, and many of the latest D2W stuff hasn't been merged up yet. No biggie. . . I thought. I downloaded the 54 version and used it in my workspace. No change. I manually copied the frameworks into my ant built .woa, no change. I deleted all the frameworks that had (somehow) found their way into /Library/Frameworks, as well as those everywhere else I could think of. No change (then I found more in ~/Library/Frameworks and deleted them. I tried again (try Number 7,819 I think).

    Based on this discussion, I deleted the wolips.properties file in ~/Library/Application Support and replaced it with the copy of my own, and it would build.

    Now dev has the same problem as the production version had.

    I am giving up on trying to get ant to do anything directly, and trying out Hudson. This does not solve my newly created dev build issue however.

    While I think WO is cool and awesome to develop in, and I admit I sometimes get too frustrated, I am not a complete novice with WO, or even with WO deployment. I can't help but be struck by the fact that I could get MAMP and a Joomla site up in about 15 minutes.

    /rant

    Andrew

    On Oct 19, 2010, at 8:11 AM, David Avendasora wrote:

    >
    > On Oct 19, 2010, at 7:00 AM, Kieran Kelleher wrote:
    >
    >> Dave,
    >>
    >> wolips.properties *is* a property containing a path name for the normal project build.xml (if you opened build.xml and looked at it you would see), so you need:
    >>
    >> ant -Dwolips.properties=~/Library/Application Support/WOLips/wolips.properties clean build install
    >
    > Hey Kieran,
    >
    > Thanks, but that doesn't help when I want to use the Built-in WOLips Install functionality by right-clicking on the project and selecting WOLips Ant Tools -> Install
    >
    > With that said, I figured it out with help from David LeBer:
    >
    > In the build.properties file I need to set:
    >
    > wolips.properties=/Developer/WebObjects/Versions/WebObjects543/wolips.properties
    >
    > Which will tell Ant to use that property file. The problem is that others on the team may not have their wolips.properties file in the same location so if they are trying to build the project too, theirs will break.
    >
    > So, in the end, while this gets things working, it's a lurking gotcha for the first time someone uses a custom wolips.properties file in a location other than the default. Either WOLips' built in Ant functionality will not work (as in my case) or far worse, it will appear to work but use a property file other than the one that I specified in the WOLips preferences.
    >
    > What do we do about that? I feel that if you set a custom wolips.properties file, everything you do within WOLips should use that file.
    >
    > I understand that it's dangerous/bad/evil/risking-the-wrath-of-anjo to make changes to the build.properties file that are user-specific so we really shouldn't write the location there, but how else do we tell an Ant build from within WOLips to use the custom wolips.properties file?
    >
    > Dave
    >
    >
    >
    >>
    >> HTH, Kieran
    >>
    >> PS. Wonder build on the other hand loads the wolips properties using the -propertyfile argument, which is probably why you were trying this option. Yes, it can be a source of confusion :-)
    >>
    >> On Oct 19, 2010, at 12:27 AM, David Avendasora wrote:
    >>
    >>> Hi all,
    >>>
    >>> I'm trying to get builds working from within Eclipse, and it appears that the WOLips Ant Tools -> Install is ignoring my wolips.properties file I have defined in the WOLips preferences and instead using the ~/Library/Application Support/WOLips/wolips.properties file, which is _wrong_.
    >>>
    >>> When I run with -debug and manually specify the -propertyfile, I get the following:
    >>>
    >>> [property] Loading /Developer/WebObjects/Versions/WebObjects543/wolips.properties
    >>> Override ignored for property "wo.system.root"
    >>> Override ignored for property "wo.user.frameworks"
    >>> Override ignored for property "wolips.properties"
    >>> Override ignored for property "wo.system.frameworks"
    >>> Override ignored for property "wonder.framework.install.root"
    >>> Override ignored for property "wo.bootstrapjar"
    >>> Override ignored for property "wo.network.frameworks"
    >>> Override ignored for property "wo.api.root"
    >>> Override ignored for property "wo.network.root"
    >>> Override ignored for property "wo.extensions"
    >>> Override ignored for property "web.framework.install.root"
    >>> Override ignored for property "wo.user.root"
    >>> Override ignored for property "wo.local.frameworks"
    >>> Override ignored for property "wo.apps.root"
    >>> Override ignored for property "build.root"
    >>> Override ignored for property "wo.local.root"
    >>>
    >>> Why is it ignoring my settings?
    >>>
    >>> Dave
    >>
    >



    This archive was generated by hypermail 2.0.0 : Tue Oct 19 2010 - 21:24:07 UTC