Re: Building frameworks in Eclipse vs. Xcode

From: Chuck Hill (chil..lobal-village.net)
Date: Tue Jun 19 2007 - 19:34:27 EDT

  • Next message: Joshua Archer: "Re: Building frameworks in Eclipse vs. Xcode"

    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



    This archive was generated by hypermail 2.0.0 : Tue Jun 19 2007 - 19:35:17 EDT