ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marc Luce <>
Subject RE: Javac dependency checking
Date Wed, 06 Dec 2000 12:51:17 GMT
There is a bug in either the Depend source code or in my usage.  We have a
rather large project with may interdependent packages.  We consider 4 main
packages as different entities.  We need to slow down development and stop
the bleeding between these packages.  In the meantime my build.xml file
treats those packages as separate targets and I let javac deal with the
interdependencies.  But when I added the <depend> tag before the 4 <javac>
tags I am getting a problem deleting a dependent class file that has inner
classes.  The long and the short of the problem is that the Depend task
deleted a file based on one of it's inner classes, and then, later, when a
different inner class of the same outer class needs to delete the class file
I get a NPE on line 248 of Depend.  I just wrapped that if statement in a
try {} catch{NPE} because the file is already deleted.

Is that try catch really needed or am I simply using it wrong.  By the way,
my depend tag is:
    <depend srcdir="${src.dir}"
            closure="on" /> 

-----Original Message-----
From: James Duncan Davidson []
Sent: Wednesday, December 06, 2000 5:04 AM
Subject: Re: Javac dependency checking

On 12/6/00 1:51 AM, "Diane Holt" <> wrote:

> Note: It should not be assumed that anyone who uses jikes just always
> cleans out all their classfiles and recompiles everything. I use jikes,
> but I do as-needed recompiles because, for me, a full recompile of all the
> classfiles can take anywhere from around 3min. to around 5min. on a slow
> machine. (I can't just hand off all my source-files to the compiler at
> once, because I have different classpaths for different files, so my build
> is divvied up into lots and lots and lots of <javac> tasks.)

Good point. 

James Duncan Davidson                              
                                                                  !try; do()

View raw message