For development, just install once as a classpath placeholder and then link the workspace project directly by editing the buildpath and push the order of the workspace dev version higher that the Framework library in Build Path Order.

For ant deployment builds where you are taking the "easy" embed = true strategy, you can just add some other ant tasks to your application build.xml to install dependent frameworks from the workspace so that the workspace version are really embedded rather than an old out of date /Library/Frameworks one.

For example, this is a custom task in one of my apps build.xml:

<!-- Install my own dependent frameworks in final local install location before embedding -->
        <target name="installMyFrameworks">
                <ant dir="../WKDemography" target="install" inheritall="false" 
/>
                <ant dir="../WKEmailData" target="install" inheritall="false" />
                <ant dir="../WKEOFExtensions" target="install" inheritall="false" 
/>
                <ant dir="../WKFoundation" target="install" inheritall="false" 
/>
                <ant dir="../WKPrototypes" target="install" inheritall="false" 
/>
                <ant dir="../WKRemoteClient" target="install" inheritall="false" 
/>
<ant dir="../WKRemoteMailingServices" target="install" inheritall="false" />
                <ant dir="../WKReports" target="install" inheritall="false" />
                <ant dir="../WKWebObjects" target="install" inheritall="false" 
/>
        </target>


And simply add adependency to the build task shown below in full (note embed = true)

    <!-- woproject tasks -->
    <target name="build.woapp" depends="installMyFrameworks">

<taskdef name="woapplication" classname="org.objectstyle.woproject.ant.WOApplication">
        </taskdef>

        <!-- add webXML="true" to generate a web.xml file -->
        <woapplication name="${build.app.name}"  stdFrameworks="false"
                                            destDir="${dest.dir}"
customInfoPListContent="$ {customInfoPListContent}" principalClass="$ {principalClass}"
                                            webXML="${webXML}"
webXML_CustomContent="$ {webXML_CustomContent}"
                                            wsDestDir="${wsdest.dir}"
frameworksBaseURL="$ {ws.frameworksBaseURL}">
            <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>
            <frameworks root="${wo.wolocalroot}" embed="true">
                <patternset>
<includesfile name="woproject/ ant.frameworks.wo.wolocalroot"/>
                </patternset>
            </frameworks>
            <frameworks root="${user.home}" embed="true">
                <patternset>
<includesfile name="woproject/ ant.frameworks.user.home"/>
                </patternset>
            </frameworks>
            <frameworks root="${wo.wosystemroot}" embed="true">
                <patternset>
<includesfile name="woproject/ ant.frameworks.wo.wosystemroot"/>
                </patternset>
            </frameworks>
            <otherclasspath root="${wo.wosystemroot}">
                <patternset>
<includesfile name="woproject/ ant.classpaths.wo.wosystemroot"/>
                </patternset>
            </otherclasspath>
            <lib dir="Libraries">
                <include name="*.jar"/>
                <exclude name="**/*.woa/**"/>
            </lib>
        </woapplication>
    </target>


HTH, Kieran

On Mar 28, 2008, at 3:31 AM, Chris Meyer wrote:

An email from earlier today pushed me to split my model out into its own framework. I needed to do this anyway since I'm adding another application that uses the same model.

My question is: Is there a way to set up dependencies in Eclipse so that building my application automatically builds the framework and installs it?

Does my framework need to be installed in /Library/Frameworks for my application to see it? Or is there a better place to build it and reference to it from my application?

Corollary: Is any way to get the "Install" menu item on my framework to appear in the toolbar?

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/kieran_lists%40mac.com

This email sent to [EMAIL PROTECTED]

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to