Wednesday, March 27, 2002 07:50 PM
We've had some luck integrating VAJ with Visual Source Safe. The product is different but the problem, sadly, is quite the the same. (Yes, you all know what I'm talking about.) Here is what I suggest:
Run, don't walk, over to http://jakarta.apache.org/ant and download the latest version of ANT. Grab the required binary release as well as the optional binary release ( 2 zip files in all). Unzip both of them and follow instructions for integrating with VAJ. (I blew off the directions and ended up copying the .class files plus default.ini into C:IBMVJavaide oolsorg-apache-tools-ant .. It was too much of a hassle (since you have to muck with the XML parser which I've already mucked with to get XSL to work the way i wanted 2 years ago) and more importantly unneccessary to build ANT from VAJ.
After you restart VisualAge, you now have a nice GUI interface into ANT right from the context menu in visualage.
ANT was originally built as a replacement for Unix's make utility. It quickly grew into a general purpose utility to "build things". There's some plain-jane tasks like file manipulation and compilation.. Some very sharp people contributed some very useful "Tasks" (that's what the 'optional' package was).. One set of tasks deals with VisualAge, another deals with source safe, another deals with clear case, etc. Unless you are doing something really off the wall, all the tasks exist for you to do everything you need to integrate visual age with clear case.
Here's an example of how we use it. I have a build-file that knows how to build a release of a certain version, say 1.2, of an application we'll call Foo. Here are the steps that get executed automatically by ANT based on what's in the xml buildfile. Remember, this gets initiated by pushing a button from a Swing interface within visualage. The most junior people in our staff can do this with confidence. Since, from their perspective, they push a button and a release pops out.
- Foo 1.2 uses the following VAJ projects: ABC 1.0, DEF 1.4, XYZ 1.5... Bob's workspace has varying versions of each and might be missing some or all. So, step 1 will be to load the proper versions from the repository and into the workspace.
- Export all the .class files from ABC, DEF and XYZ into a temp directory.
- Build the .jar files. We use patterns to match which packages go in which jar file. com.fubar.log might go in logging.jar for example
- The .jar files are checked into visual source safe.
After this process runs, the user is assured that everything is in VSS and they're free to go into websphere studio and push the publish button (which is about all we use websphere studio for).
The above is just an example of what ANT can do. It can do much more. It's a powerful enough tool to support whatever build process you have in your organization. Even though we've only scratched the surface of what it can do, it's made our process much more sound.
The key in my opinion is to become educated on ANT and make the tool fit your process, not the other way around.
Hope this helped.
PS: Anyone have any more stories on using ANT from VisualAge? I'm curious what others are doing and can't find many examples specific to VAJ.