----- Original Message ----- From: "David McTavish" <[EMAIL PROTECTED]> To: "'Ant Users List'" <[EMAIL PROTECTED]> Sent: Monday, February 03, 2003 11:03 Subject: RE: Scaling to large projects
> > The only tricky part was when projects depended on other projects. I've > refactored this to basically two lines per dependency in each build script. > One to add the library to the compile classpath, and another inside the > dependency of the compile target which imports the libraries to the local > lib folder. I've refactored this such that it only requires two variables, > the path to the dependent project, and the name of the archive to copy to > the local lib folder. This means that you have to manually manage the > dependencies between projects, which is more of a philosophical difference the way I work is -a central repository of libraries for every app. this makes it easier to roll out updates across all apps lib/log4j-1.2.7/dist/log4.jar lib/castor0.9.3.9/lib/castor.jar ... -a central properties.xml file to declare log4j.home, log4j.jar properties set to the various locatons -the file also to declare the dirs that various projects stick their output jars -this file is included as an XML entity (see ant in anger for details) So an app sets up a classpath of ${log4.jar},${axis.jar},${castor.jar}, ${myapp.jar}, pulling them in from wherever they are defined; if one machine wants to bind axis.jar to daily builds, that can be one in a properties file loaded in properties.xml; the apps own build files are untouched. Does this work? Yes, especially the bigger and more complex the project. Having all the libs in one place makes maintenance easier. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]