Re: Building frameworks in Eclipse vs. Xcode

From: Joshua Archer (joshu..dl.edu)
Date: Wed Jun 20 2007 - 12:14:31 EDT

  • Next message: Ken Anderson: "Re: project creation"

    Works great now, thanks for your help and patience. I now have
    confidence I can move all my code over, but I might have more
    questions as I try to do so. :)

    On Jun 19, 2007, at 4:55 PM, Chuck Hill wrote:

    > That is the correct build.xml. Dropping anything in Resources/
    > should result in it getting into the .framework/Resources folder of
    > the built product.
    >
    > Chuck
    >
    > On Jun 19, 2007, at 4:50 PM, Joshua Archer wrote:
    >
    >> I'm using version 3.2.2 for eclipse, and if I create a new WOnder
    >> framework project, here's my build.xml:
    >>
    >> <Picture 1.png>
    >> <Picture 2.png>
    >>
    >> <project name="AssetDBSupport" default="build" basedir=".">
    >>
    >> <!-- main targets -->
    >> <!-- add optional targets to depends list if needed -->
    >> <target name="build"
    >> depends="setProps,init.build,build.woframework"/>
    >>
    >> <target name="compileAndBuild"
    >> depends="setProps,init.build,compile,build.woframework" />
    >>
    >> <target name="install"
    >> depends="setProps,init.install,build.woframework"/>
    >>
    >> <target name="clean" depends="setProps">
    >> <delete dir="dist"/>
    >> </target>
    >>
    >> <!-- property determination -->
    >> <target name="setProps">
    >> <property file="${user.home}${file.separator}build.properties"/>
    >> <property file="build.properties"/>
    >> <property file="${user.home}${file.separator}Library$
    >> {file.separator}wobuild.properties"/>
    >> <condition property="wo.properties.check.failed">
    >> <not>
    >> <and>
    >> <isset property="wo.wosystemroot"/>
    >> <isset property="wo.wolocalroot"/>
    >> </and>
    >> </not>
    >> </condition>
    >> <fail message="Could not find ${user.home}${file.separator}
    >> Library${file.separator}wobuild.properties."
    >> if="wo.properties.check.failed"/>
    >> <property name="install.dir" value="${wo.wolocalroot}/Library/
    >> Frameworks"/>
    >> </target>
    >>
    >> <!-- basic initializations -->
    >> <target name="init.install">
    >> <tstamp/>
    >> <property name="dest.dir" value="${install.dir}"/>
    >> </target>
    >>
    >> <target name="init.build">
    >> <tstamp/>
    >> <property name="dest.dir" value="dist"/>
    >> </target>
    >>
    >> <!-- woproject tasks -->
    >> <target name="build.woframework">
    >>
    >> <taskdef name="woframework"
    >> classname="org.objectstyle.woproject.ant.WOFramework">
    >> </taskdef>
    >>
    >> <woframework name="${framework.name}" destDir="${dest.dir}"
    >> customInfoPListContent="${customInfoPListContent}"
    >> principalClass="${principalClass}" eoAdaptorClassName="$
    >> {eoAdaptorClassName}">
    >> <classes dir="${classes.dir}">
    >> <patternset>
    >> <includesfile name="woproject/classes.include.patternset"/>
    >> <excludesfile name="woproject/classes.exclude.patternset"/>
    >> </patternset>
    >> </classes>
    >> <wsresources dir="WebServerResources">
    >> <patternset>
    >> <include name="**/*"/>
    >> <exclude name="CVS"/>
    >> <exclude name=".svn"/>
    >> <excludesfile name="woproject/wsresources.exclude.patternset"/>
    >> </patternset>
    >> </wsresources>
    >> <resources dir="Resources">
    >> <patternset>
    >> <include name="**/*"/>
    >> <exclude name="CVS"/>
    >> <exclude name=".svn"/>
    >> <excludesfile name="woproject/resources.exclude.patternset"/>
    >> </patternset>
    >> </resources>
    >> <resources dir="Components">
    >> <patternset>
    >> <include name="**/*"/>
    >> <exclude name="CVS"/>
    >> <exclude name=".svn"/>
    >> <excludesfile name="woproject/resources.exclude.patternset"/>
    >> </patternset>
    >> </resources>
    >> <lib dir="Libraries">
    >> <include name="*.jar"/>
    >> <exclude name="**/*.framework/**"/>
    >> </lib>
    >> </woframework>
    >> </target>
    >>
    >> <target name = "compile" depends = "setProps,init.build" >
    >> <mkdir dir = "bin"/>
    >> <javac srcdir = "Sources" destdir = "bin">
    >> <classpath>
    >> <fileset dir="${wo.dir.user.home.library.frameworks}"
    >> includesfile = "woproject/ant.frameworks.user.home">
    >> <include name = "**/*.jar"/>
    >> </fileset>
    >> <fileset dir="${wo.wolocalroot}" includesfile = "woproject/
    >> ant.frameworks.wo.wolocalroot">
    >> <include name = "**/*.jar"/>
    >> </fileset>
    >> <fileset dir="${wo.wosystemroot}" includesfile =
    >> "woproject/ant.frameworks.wo.wosystemroot">
    >> <include name = "**/*.jar"/>
    >> </fileset>
    >> </classpath>
    >> </javac>
    >> </target>
    >> </project>
    >>
    >> On Jun 19, 2007, at 4:34 PM, Chuck Hill wrote:
    >>
    >>>
    >>> On Jun 19, 2007, at 4:20 PM, Joshua Archer wrote:
    >>>
    >>>> Hello Chuck et al,
    >>>>
    >>>> So, I installed the latest nightly, and created a
    >>>> WOnderFramework project, and ended up with a build.xml file that
    >>>> looked like the one I previously described.
    >>>
    >>> I just did that with same version that you claim to be using and
    >>> I get this:
    >>>
    >>> <project name="WOnderFramework" default="build" basedir=".">
    >>>
    >>> <!-- main targets -->
    >>> <!-- add optional targets to depends list if needed -->
    >>> <target name="build"
    >>> depends="setProps,init.build,build.woframework"/>
    >>>
    >>> <target name="compileAndBuild"
    >>> depends="setProps,init.build,compile,build.woframework" />
    >>>
    >>> <target name="install"
    >>> depends="setProps,init.install,build.woframework"/>
    >>>
    >>> <target name="clean" depends="setProps">
    >>> <delete dir="dist"/>
    >>> </target>
    >>>
    >>> <!-- property determination -->
    >>> <target name="setProps">
    >>> <property file="${user.home}${file.separator}build.properties"/>
    >>> <property file="build.properties"/>
    >>> <property file="${user.home}${file.separator}Library$
    >>> {file.separator}wobuild.properties"/>
    >>> <condition property="wo.properties.check.failed">
    >>> <not>
    >>> <and>
    >>> <isset property="wo.wosystemroot"/>
    >>> <isset property="wo.wolocalroot"/>
    >>> </and>
    >>> </not>
    >>> </condition>
    >>> <fail message="Could not find ${user.home}${file.separator}
    >>> Library${file.separator}wobuild.properties."
    >>> if="wo.properties.check.failed"/>
    >>> <property name="install.dir" value="${wo.wolocalroot}/Library/
    >>> Frameworks"/>
    >>> </target>
    >>>
    >>> <!-- basic initializations -->
    >>> <target name="init.install">
    >>> <tstamp/>
    >>> <property name="dest.dir" value="${install.dir}"/>
    >>> </target>
    >>>
    >>> <target name="init.build">
    >>> <tstamp/>
    >>> <property name="dest.dir" value="dist"/>
    >>> </target>
    >>>
    >>> <!-- woproject tasks -->
    >>> <target name="build.woframework">
    >>>
    >>> <taskdef name="woframework"
    >>> classname="org.objectstyle.woproject.ant.WOFramework">
    >>> </taskdef>
    >>>
    >>> <woframework name="${framework.name}" destDir="${dest.dir}"
    >>> customInfoPListContent="${customInfoPListContent}"
    >>> principalClass="${principalClass}" eoAdaptorClassName="$
    >>> {eoAdaptorClassName}">
    >>> <classes dir="${classes.dir}">
    >>> <patternset>
    >>> <includesfile name="woproject/classes.include.patternset"/>
    >>> <excludesfile name="woproject/classes.exclude.patternset"/>
    >>> </patternset>
    >>> </classes>
    >>> <wsresources dir="WebServerResources">
    >>> <patternset>
    >>> <include name="**/*"/>
    >>> <exclude name="CVS"/>
    >>> <exclude name=".svn"/>
    >>> <excludesfile name="woproject/wsresources.exclude.patternset"/>
    >>> </patternset>
    >>> </wsresources>
    >>> <resources dir="Resources">
    >>> <patternset>
    >>> <include name="**/*"/>
    >>> <exclude name="CVS"/>
    >>> <exclude name=".svn"/>
    >>> <excludesfile name="woproject/resources.exclude.patternset"/>
    >>> </patternset>
    >>> </resources>
    >>> <resources dir="Components">
    >>> <patternset>
    >>> <include name="**/*"/>
    >>> <exclude name="CVS"/>
    >>> <exclude name=".svn"/>
    >>> <excludesfile name="woproject/resources.exclude.patternset"/>
    >>> </patternset>
    >>> </resources>
    >>> <lib dir="Libraries">
    >>> <include name="*.jar"/>
    >>> <exclude name="**/*.framework/**"/>
    >>> </lib>
    >>> </woframework>
    >>> </target>
    >>>
    >>> <target name = "compile" depends = "setProps,init.build" >
    >>> <mkdir dir = "bin"/>
    >>> <javac srcdir = "Sources" destdir = "bin">
    >>> <classpath>
    >>> <fileset dir="${wo.dir.user.home.library.frameworks}"
    >>> includesfile = "woproject/ant.frameworks.user.home">
    >>> <include name = "**/*.jar"/>
    >>> </fileset>
    >>> <fileset dir="${wo.wolocalroot}" includesfile =
    >>> "woproject/ant.frameworks.wo.wolocalroot">
    >>> <include name = "**/*.jar"/>
    >>> </fileset>
    >>> <fileset dir="${wo.wosystemroot}" includesfile =
    >>> "woproject/ant.frameworks.wo.wosystemroot">
    >>> <include name = "**/*.jar"/>
    >>> </fileset>
    >>> </classpath>
    >>> </javac>
    >>> </target>
    >>> </project>
    >>>
    >>>
    >>>
    >>> Does that look the same as yours?
    >>>
    >>>
    >>>> Did I do something incorrect? Should I use WOFramework instead
    >>>> of WOnderFramework?
    >>>
    >>> The WOnder versions are much easier to work with.
    >>>
    >>>
    >>>> Do I have the wrong nightly build? It seems copying over the
    >>>> build.xml will not solve my problem in this case.
    >>>
    >>> Did you update to Eclipse 3.2.2?
    >>>
    >>>
    >>> Chuck
    >>>
    >>>
    >>>>
    >>>> Joshua
    >>>>
    >>>>> On Jun 18, 2007, at 3:58 PM, Chuck Hill wrote:
    >>>>>
    >>>>>> What are you describing is
    >>>>>>
    >>>>>> 4. Really, deeply broken Wonder.
    >>>>>>
    >>>>>> You, sir, are using an archaic version of WOLips. Things get
    >>>>>> added and fixed frequency. Hie thee to http://
    >>>>>> webobjects.mdimension.com/wolips/nightly/ and install
    >>>>>> something modern. You _will_ need to recreate the project or
    >>>>>> at least create a project of the same name and move build.xml
    >>>>>> and woproject/ into this project.
    >>>>>>
    >>>>>>
    >>>>>> Chuck
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>> On Jun 18, 2007, at 3:49 PM, Joshua Archer wrote:
    >>>>>>
    >>>>>>> mine looks *almost* like that, but it had a section for
    >>>>>>> 'Components' and 'Libraries', which forced me to create some
    >>>>>>> empty directories in the process or it would fail.
    >>>>>>>
    >>>>>>> On Jun 18, 2007, at 3:42 PM, Chuck Hill wrote:
    >>>>>>>
    >>>>>>>> The first thing to figure out is which project format you
    >>>>>>>> are using:
    >>>>>>>>
    >>>>>>>> 1. WOLips standard
    >>>>>>>> 2. Broken Wonder
    >>>>>>>> 3. Fixed Wonder
    >>>>>>>>
    >>>>>>>> Look in the build.xml for <woframework...
    >>>>>>>>
    >>>>>>>> Does it look like this?
    >>>>>>>>
    >>>>>>>> <woframework name="${framework.name}" destDir="$
    >>>>>>>> {dest.dir}" customInfoPListContent="$
    >>>>>>>> {customInfoPListContent}" principalClass="${principalClass}"
    >>>>>>>> eoAdaptorClassName="${eoAdaptorClassName}">
    >>>>>>>> <classes dir="${classes.dir}">
    >>>>>>>> <patternset>
    >>>>>>>> <includesfile name="woproject/
    >>>>>>>> classes.include.patternset"/>
    >>>>>>>> <excludesfile name="woproject/
    >>>>>>>> classes.exclude.patternset"/>
    >>>>>>>> </patternset>
    >>>>>>>> </classes>
    >>>>>>>> <wsresources dir="WebServerResources">
    >>>>>>>> <patternset>
    >>>>>>>> <include name="**/*"/>
    >>>>>>>> <exclude name="CVS"/>
    >>>>>>>> <exclude name=".svn"/>
    >>>>>>>> <excludesfile name="woproject/
    >>>>>>>> wsresources.exclude.patternset"/>
    >>>>>>>> </patternset>
    >>>>>>>> </wsresources>
    >>>>>>>> <resources dir="Resources">
    >>>>>>>> <patternset>
    >>>>>>>> <include name="**/*"/>
    >>>>>>>> <exclude name="CVS"/>
    >>>>>>>> <exclude name=".svn"/>
    >>>>>>>> <excludesfile name="woproject/
    >>>>>>>> resources.exclude.patternset"/>
    >>>>>>>> </patternset>
    >>>>>>>> </resources>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>> On Jun 18, 2007, at 3:21 PM, Joshua Archer wrote:
    >>>>>>>>
    >>>>>>>>> I've checked, and the only thing in there is Info.plist and
    >>>>>>>>> the Java dir. I've got several other files that need to
    >>>>>>>>> make it into Resources/, what do I edit to get them in? I'm
    >>>>>>>>> by no means an ant build expert (really just starting out).
    >>>>>>>>> I suspect I need to add something in there to copy the
    >>>>>>>>> files at build, yes?
    >>>>>>>>>
    >>>>>>>>> On Jun 18, 2007, at 2:46 PM, Chuck Hill wrote:
    >>>>>>>>>
    >>>>>>>>>>
    >>>>>>>>>>> and in /Library/Frameworks I got the framework to build
    >>>>>>>>>>> with the jar. I have associated plist files etc. -- did
    >>>>>>>>>>> those get into the jar, or do I need to modify my ant
    >>>>>>>>>>> script to copy those into the framework?
    >>>>>>>>>>
    >>>>>>>>>> They _should_ get copied. Check in the .framework/
    >>>>>>>>>> Resources directory to verify. If not, you will need to
    >>>>>>>>>> do something.
    >>>>>>>>>
    >>>>>>>>> --------------------------------------------------------------
    >>>>>>>>> ---------------
    >>>>>>>>> Joshua Archer
    >>>>>>>>> Software Engineer, CSU - Center for Distributed Learning
    >>>>>>>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>>>>>>> --------------------------------------------------------------
    >>>>>>>>> ---------------
    >>>>>>>>>
    >>>>>>>>>
    >>>>>>>>>
    >>>>>>>>>
    >>>>>>>>
    >>>>>>>> --
    >>>>>>>>
    >>>>>>>> Practical WebObjects - for developers who want to increase
    >>>>>>>> their overall knowledge of WebObjects or who are trying to
    >>>>>>>> solve specific problems.
    >>>>>>>> http://www.global-village.net/products/practical_webobjects
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>
    >>>>>>> ----------------------------------------------------------------
    >>>>>>> -------------
    >>>>>>> Joshua Archer
    >>>>>>> Software Engineer, CSU - Center for Distributed Learning
    >>>>>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>>>>> ----------------------------------------------------------------
    >>>>>>> -------------
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>
    >>>>>> --
    >>>>>>
    >>>>>> Practical WebObjects - for developers who want to increase
    >>>>>> their overall knowledge of WebObjects or who are trying to
    >>>>>> solve specific problems.
    >>>>>> http://www.global-village.net/products/practical_webobjects
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>
    >>>>> ------------------------------------------------------------------
    >>>>> -----------
    >>>>> Joshua Archer
    >>>>> Software Engineer, CSU - Center for Distributed Learning
    >>>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>>> ------------------------------------------------------------------
    >>>>> -----------
    >>>>>
    >>>>>
    >>>>>
    >>>>>
    >>>>
    >>>> -------------------------------------------------------------------
    >>>> ----------
    >>>> Joshua Archer
    >>>> Software Engineer, CSU - Center for Distributed Learning
    >>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>> -------------------------------------------------------------------
    >>>> ----------
    >>>>
    >>>>
    >>>>
    >>>>
    >>>
    >>> --
    >>>
    >>> Practical WebObjects - for developers who want to increase their
    >>> overall knowledge of WebObjects or who are trying to solve
    >>> specific problems.
    >>> http://www.global-village.net/products/practical_webobjects
    >>>
    >>>
    >>>
    >>>
    >>>
    >>>
    >>
    >> ---------------------------------------------------------------------
    >> --------
    >> Joshua Archer
    >> Software Engineer, CSU - Center for Distributed Learning
    >> Phone: 707.664.2085, Fax: 707.664.4350
    >> ---------------------------------------------------------------------
    >> --------
    >>
    >>
    >>
    >
    > --
    >
    > Practical WebObjects - for developers who want to increase their
    > overall knowledge of WebObjects or who are trying to solve specific
    > problems.
    > http://www.global-village.net/products/practical_webobjects
    >
    >
    >
    >
    >
    >

    ------------------------------------------------------------------------
    -----
    Joshua Archer
    Software Engineer, CSU - Center for Distributed Learning
    Phone: 707.664.2085, Fax: 707.664.4350
    ------------------------------------------------------------------------
    -----



    This archive was generated by hypermail 2.0.0 : Wed Jun 20 2007 - 12:17:18 EDT