info-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ant and cvs directory structure?


From: Joi Ellis
Subject: Re: ant and cvs directory structure?
Date: Mon, 13 May 2002 11:36:52 -0500 (CDT)

On Sun, 12 May 2002, Ray Tayek wrote:

> hi, new to cvs (used to rcs), trying to grok a rational tree structure for 
> cvs. seems like packages hang out in com.foo.packageName... so we have a 
> list of these for each project and perhaps a few odds and ends in the 
> default package. so it would seem that cvsroot looks like:
> 
> cvsroot/
>          project1/
>                  com.foo.product1.bar
>                  com.foo.prodecut2.baz
>                  com.tayek.product1...
>                  ...
>                  org.quux.product 1...
>          project2/...
> 
> but this would scatter/duplicate the stuff from com.foo in many places.

I tend to have one JBuilder project <-> one Java package <-> one CVS Module.
However, I also tend to separate unit test classes from application classes
to make deployment easier.  

I put reusable utility classes into a utils package, and once I decide I
really want to reuse those classes in other projects, I'll move that class
from its original project over into my Utils project.  A physical refactoring,
as it were.  It's not uncommon for a Project to have an application package
and a utils package for a time during initial development.

> 
> so perhaps the following is indicated:
> 
> cvsroot/
>          com.foo.product1...
>          com.foo.product2...
>          org.quux.product1...
>          com.tayek.product1...
>          ...
>          project1...
>                  package1...
>          project2
> 
> i figure that you might have test projects for each com.foo.productX and 
> that most of the stuff in com.foo.productX be used as a jar in my projects. 
> but my own source (the stuff under tayek.com)  or stuff that i am hacking 
> at probably wants to be copied into each project in many cases. i suppose 
> the answer is to have ant get the stuff using a few cvs co's?

I have my Utils project create a utils.jar, and that jar goes onto the class
path of any other project which needs it.  I never deliberately duplicate
classes between projects/cvs modules, for that way lies madness. ;)  Inside
JBuilder, I typically define a library which points to a
checked-out-and-compiled workspace for the Utils project.  That way I don't
have to worry about keeping the jar itself up to date or deal with jar
file handle conflicts.

I use JBuilder rather than ant, but the tool doesn't matter that much.
Ant is a fine, java-based make replacement but I just haven't needed it for
more than building one or two 3rd party libraries.

> 
> what do you people usually do?
> 
> thanks
> 

-- 
Joi Ellis                    Software Engineer
Aravox Technologies          address@hidden, address@hidden

No matter what we think of Linux versus FreeBSD, etc., the one thing I
really like about Linux is that it has Microsoft worried.  Anything
that kicks a monopoly in the pants has got to be good for something.
           - Chris Johnson




reply via email to

[Prev in Thread] Current Thread [Next in Thread]