Re: I need help with project concept

"Res Pons" <[email protected]>
Newsgroups gmane.comp.java.anthill,gmane.spam.detected
Message-ID <[email protected]>
Eric

Thaks you for your thorough explanation.  This is what I was looking for, 
someone to give me a sense of bearing!  I'm going to try some of your 
approach and will keep you posted.

Thanks  again.





----Original Message Follows----
From: Eric Minick <[email protected]>
Reply-To: Anthill user list <anthill-IWHQxnLZ/[email protected]>
To: Anthill user list <anthill-IWHQxnLZ/[email protected]>
CC: [email protected], users-lmwclWVctOZK/[email protected]
Subject: Re: [Anthill] I need help with project concept
Date: Sun, 05 Mar 2006 22:24:55 -0700
MIME-Version: 1.0
Received: from lists.urbancode.com ([64.34.169.154]) by 
bay0-mc3-f6.bay0.hotmail.com with Microsoft SMTPSVC(6.0.3790.211); Sun, 5 
Mar 2006 21:26:15 -0800
Received: (qmail 16729 invoked by uid 510); 6 Mar 2006 05:26:22 -0000
Received: from anthill-bounces-IWHQxnLZ/[email protected] by caladin.urbancode.com 
by uid 504 with qmail-scanner-1.20  (spamassassin: 2.61.  
Clear:RC:1(127.0.0.1):.  Processed in 0.019666 secs); 06 Mar 2006 05:26:22 
-0000
Received: from localhost (HELO caladin.urbancode.com) (127.0.0.1)  by 
lists.urbancode.com with SMTP; 6 Mar 2006 05:26:22 -0000
Received: (qmail 16703 invoked by uid 510); 6 Mar 2006 05:26:20 -0000
Received: from [email protected] by caladin.urbancode.com by uid 504 
withqmail-scanner-1.20 (spamassassin: 2.61.  
Clear:RC:0(207.99.47.54):SA:0(0.1/5.0):. Processed in 1.282947 secs); 06 Mar 
2006 05:26:20 -0000
Received: from host54a.simplicato.com (207.99.47.54)by lists.urbancode.com 
with SMTP; 6 Mar 2006 05:26:18 -0000
Received: from localhost (localhost.simplicato.com [127.0.0.1])by 
host54a.simplicato.com (Postfix) with ESMTP id 87A7A6C0479;Mon,  6 Mar 2006 
00:25:02 -0500 (EST)
Received: from host54a.simplicato.com ([127.0.0.1])by localhost 
(host54a.simplicato.com [127.0.0.1]) (amavisd-new,port 10024)with ESMTP id 
04835-01; Mon,  6 Mar 2006 00:25:02 -0500 (EST)
Received: from [192.168.0.101] 
(c-67-190-19-249.hsd1.co.comcast.net[67.190.19.249])by 
host54a.simplicato.com (Postfix) with ESMTP id E74C96C0424;Mon,  6 Mar 2006 
00:25:01 -0500 (EST)
X-Message-Info: JGTYoYF78jEHjJx36Oi8+Z3TmmkSEdPtfpLB7P/ybN8=
Return-Path: <[email protected]>
Delivered-To: mailman-anthill-IWHQxnLZ/[email protected]
User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)
X-Accept-Language: en-us, en
References: <[email protected]>
X-Virus-Scanned: by amavisd-new at simplicato.com
X-Spam-Checker-Version: SpamAssassin 2.61 (1.212.2.1-2003-12-09-exp) on 
caladin.urbancode.com
X-Spam-Level:
X-Spam-Status: No, hits=0.1 required=5.0 tests=RCVD_IN_SORBS autolearn=no 
version=2.61
X-BeenThere: anthill-IWHQxnLZ/[email protected]
X-Mailman-Version: 2.1.4
Precedence: list
List-Id: Anthill user list <anthill.lists.urbancode.com>
List-Unsubscribe: 
<http://lists.urbancode.com/mailman/listinfo/anthill>,<mailto:anthill-request-IWHQxnLZ/[email protected]?subject=unsubscribe>
List-Archive: <http://lists.urbancode.com/pipermail/anthill>
List-Post: <mailto:anthill-IWHQxnLZ/[email protected]>
List-Help: <mailto:anthill-request-IWHQxnLZ/[email protected]?subject=help>
List-Subscribe: 
<http://lists.urbancode.com/mailman/listinfo/anthill>,<mailto:anthill-request-IWHQxnLZ/[email protected]?subject=subscribe>
Errors-To: anthill-bounces-IWHQxnLZ/[email protected]
X-OriginalArrivalTime: 06 Mar 2006 05:26:15.0630 (UTC) 
FILETIME=[7D5556E0:01C640DE]

Res,

I believe this is a fairly classic dependency management question with 
several decent answers. The 'master build script' approach you have taken is 
somewhat similar to the approach some Maven projects take. Personally, I'm 
not a big fan of the approach, but it certainly works for a number of 
organizations.

Anthill does have a dependency support mechanism of its own. At a high level 
what it does is allow you to specify groups of projects that have dependency 
relationships. You would then build these groups of projects together and 
Anthill would tell your build scripts where to find the shared jars - and 
likewise where to deliver the jars. You would need to tweak your build 
scripts, but probably wouldn't need to overhaul them. If this sounds like a 
viable approach, let us know and we can talk about that in more depth. As a 
side note, Anthill Pro does something similar but uses a different model to 
manage the dependencies. If the Anthill OS model doesn't work for you, it 
might be worth a look.

If you are really serious about dependencies and don't really want your 
build system managing them, I would use Ivy. The tool has been out for about 
a year and while young is really nice. Instead of copying jar files around, 
you use ivy to 'publish' them to a repository. Each project will also have a 
file where you list out the jars (and versions of jars) it is dependent on. 
When you start a build, you run an Ant task to retrieve the dependencies 
first thing. The repository is usually just files copied to the file system, 
but I believe there are extensions available to back it to Subversion.

The nice thing about Ivy is that dependencies are handled the same way on 
the build server that they are handled on the developer machine. The more we 
can make the build process on the developer's machine like the build process 
on the build server, the better.

On the side note, I'm not sure why Anthill would care if your build script 
is checking out code, and if you wanted we could look into that. I think 
that you are recreating the built in dependency management though.

Kind Regards,
Eric

Res Pons wrote:

>Sorry to post across the userlists.
>
>I'm using Subversion, Ant, and Anthill OS to automate my projects. We 
>release many products in different projects.
>
>Currently I have set up a property sheet in Anthill for each project's 
>build.xml and everything works fine. However, many of the projects create a 
>.jar file which is used or needed by other projects. I tell my build.xml 
>file in each project where to get the compiled jar files.
>
>With so many jar files being copied all over and our projects growing 
>larger and larger daily, I was asked to create my own top parallel project 
>and call all the build files from my master proj and make this project the 
>exchange folder for all the jar files or any other artifact. It's a cleaner 
>way, of course and more contained but it entails more work on my part.
>
>I've got my master build file to work, running at the cmnd prompt, however, 
>Anthill does not like it when you tell a build file to check out other top 
>level project files from the repo. Should I create dummy project files in 
>Anthill just to check out the other projects and then let my build file 
>take control?
>
>Somebody please give me guidance on the big picture. Is this a good idea to 
>have a master and separate build project aware of all the other projects 
>and but the other projects not being aware of it? How do I bypass the 
>Anthill's shortcoming? By switching to CruiseControl? Are there or do you 
>have any examples I could see please?
>
>_________________________________________________________________
>FREE pop-up blocking with the new MSN Toolbar – get it now! 
>http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/
>
>_______________________________________________
>Anthill mailing list
>Anthill-IWHQxnLZ/[email protected]
>http://lists.urbancode.com/mailman/listinfo/anthill


_______________________________________________
Anthill mailing list
Anthill-IWHQxnLZ/[email protected]
http://lists.urbancode.com/mailman/listinfo/anthill

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE! 
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.