Hi Daniel,

You seem to be working really hard to find a complex solution to a simple 
problem.

1) Why not just include _all_ the depended-upon frameworks in your app's 
.classpath? In other words, The App's class path has all of the WOFramework 
entries for the frameworks it depends upon, even if they are 2- or 3- or 
n-times removed from the App itself? They are just lines of text in 1 file. 
Other than duplication, which you are doing anyway by creating a secondary 
classpath file what is it you are trying to avoid? By including them all in the 
.classpath, both WOJenkins and WOLips would know what to do when you build.

2) If you are using Jenkins, why do you still use WOLips to build your App? 
WOLips does not _ever_ build your dependencies for you. You will always have to 
build them one at a time, in dependency order and you run the risk of 
forgetting a dependency and having WOLips build with an old version. If you've 
got Jenkins working, by hook or by crook, then _stop_ using WOLips to trigger 
Ant builds. It's like still keeping a MySQL version of your database 
synchronized with your production FrontBase database.

3) I think you already have this set, but make sure you have the Embed System 
and Local frameworks turned on in the WOLips build preferences, because that's 
what tells Ant to actually copy the frameworks denoted by the WOFrameworks 
entries into the app. Without those set, Ant will just use those entries to 
resolve dependencies for compiling. If those frameworks aren't available on 
your server, then your apps won't run.

Dave

On Mar 15, 2012, at 9:07 AM, Daniel Roy wrote:

> Thanks Pascal for the ideas.  I already have something working in Jenkins 
> where I modified the setupWorkspace shell script from WOJenkins to take 
> parameter that is a custom classpath filename (which resides in the relevant 
> project).  This custom classpath contains the required custom Frameworks, and 
> compiles without issue, but then I'm back to the ant build problem where the 
> ant build only includes the files in the original .classpath file, since this 
> is hardcoded in the related WOLips classes.
> 
> I'll keep digging, and if I find any solutions I'll post back to the list :)
> 
> -Daniel
> 
> 
> 
> On 2012-03-14, at 6:35 PM, Pascal Robert wrote:
> 
>> 
>> Le 2012-03-14 à 16:50, Daniel Roy a écrit :
>> 
>>> Hi,
>>> 
>>> Pascal:  The projects are linked as WO Frameworks.
>>> 
>>> I'm trying to figure out how I can build an application (in Jenkins) in 
>>> multiple ways, each with it's own set of dependent frameworks.  So, for 
>>> example:
>>> 
>>> Client A
>>>     Application1
>>>             FrameworkA
>>>             FrameworkB
>>> 
>>> Client B
>>>     Application1
>>>             FrameworkB
>>> 
>>> If I could specify a custom classpath file contained within the project 
>>> that could be read during the build process, like:
>>> 
>>> <frameworks root="ProjectLocal" embed="${embed.ProjectLocal}" 
>>> eclipse="true" classpath="mycustom.classpath" />
>> 
>> The only way I can think is to modify the WOJenkins to look at something 
>> else than .classpath… or probably to use Maven. 
>> 
>>> …I might be able to force the build to include the different frameworks 
>>> when required.  I want to avoid having to copy the same project 10 times in 
>>> Eclipse just so they can each have their own set of frameworks references.  
>> 
>> So you won't have 10 jobs, but you will end up with calling 10 Ant tasks in 
>> Jenkins anyway. Or you do something to the build files that Wonder uses.
>> 
>>> Am I dreaming that this is possible?
>>> 
>>> Thanks,
>>> 
>>> Daniel
>>> 
>>> 
>>> On 2012-03-14, at 4:39 PM, Chuck Hill wrote:
>>> 
>>>> 
>>>> On 2012-03-14, at 1:09 PM, Daniel Roy wrote:
>>>> 
>>>>> Hi,
>>>>> 
>>>>> In Eclipse, when I select "WOLips Ant Tools -> Install…", I'm presented 
>>>>> with a list of open projects.  From the image I've attached, FrameworkA 
>>>>> is on the build path of MyApplication, so it's checked.  But I can also 
>>>>> include FrameworkB by checking it, and it gets compiled before the build 
>>>>> happens, but it's not included in the packaged application.  This is 
>>>>> because build.xml is specifying "eclipse=true" for the frameworkset and 
>>>>> that only respects the application's .classpath file for framework 
>>>>> references.
>>>> 
>>>> Why would you want it as part of the application?  It is not on the 
>>>> classpath so the application is not using it...
>>>> 
>>>> 
>>>>> 
>>>>> Is there any way to force the inclusion of FrameworkB in the final 
>>>>> packaged application?  Will I have to modify the application's build.xml 
>>>>> to explicitly include the outside-of-classpath frameworks?  What is the 
>>>>> intent of allowing the selection of other frameworks at build time if 
>>>>> they aren't included in the packaged application for deployment?
>>>> 
>>>> My guess is that it is a defect.
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> Chuck Hill             Senior Consultant / VP Development
>>>> 
>>>> 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/gvc/practical_webobjects
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      ([email protected])
>>> Help/Unsubscribe/Update your Subscription:
>>> https://lists.apple.com/mailman/options/webobjects-dev/probert%40macti.ca
>>> 
>>> 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:
> https://lists.apple.com/mailman/options/webobjects-dev/webobjects%40avendasora.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:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to