From: Rajarshi G. <rx...@ps...> - 2006-01-18 17:10:42
|
I'm not sure why I am seeing this problem. I am running ant clean dist-all and it fails because it says it can't find src/java1.4.javafiles I looked at MakeJavaFilesFilesDoclet.java and in process() it appears that the variable called keys only has the values: java1.5 and java1.4+ (amongst the other values). I don't know too much about the way doclets work but I assume that the keys are the values of the cdk.require tag. So why doesn't java1.4 show up? But after doing find src/ -name "*.java" | xargs grep "java1.4 shows that there are no files that contain "@cdk.require java1.4"! All the hits from the grep have java1.4+ So it seems that the build file needs to be updated to not look for java1.4.* since these files will never be generated. Is this correct? (Commenting out the lines that look for java1.4.* makes the build work fine) ------------------------------------------------------------------- Rajarshi Guha <rx...@ps...> <http://jijo.cjb.net> GPG Fingerprint: 0CCA 8EE2 2EEB 25E2 AB04 06F7 1BB9 E634 9B87 56EE ------------------------------------------------------------------- All life evolves by the differential survival of replicating entities. -- Dawkins |
From: Egon W. <eg...@us...> - 2006-01-18 20:17:06
|
On Wednesday 18 January 2006 18:11, Rajarshi Guha wrote: > I'm not sure why I am seeing this problem. > > I am running ant clean dist-all and it fails because it says it can't > find src/java1.4.javafiles > > I looked at MakeJavaFilesFilesDoclet.java and in process() it appears > that the variable called keys only has the values: java1.5 and java1.4+ > (amongst the other values). I don't understand what you mean... There doclet source should not have any key at all... > I don't know too much about the way doclets work but I assume that the > keys are the values of the cdk.require tag. > > So why doesn't java1.4 show up? > > But after doing > > find src/ -name "*.java" | xargs grep "java1.4 > > shows that there are no files that contain "@cdk.require java1.4"! > All the hits from the grep have java1.4+ > > So it seems that the build file needs to be updated to not look for > java1.4.* since these files will never be generated. > > Is this correct? Well, at least the FileConvertor had java1.4... you should know, you changed it today to java1.4+ :) Anyway, there was a clear reason to make the distinction: the FileConvertor could really only be compiled with java1.4 and *not* with java1.5, because it depended on CMLDOM. So, now it should really say @cdk.require java1.5 ... > (Commenting out the lines that look for java1.4.* makes the build work > fine) This is really weird because I have no problem at all with Sun JVM 1.5.0... Egon -- eg...@us... Blog: http://chem-bla-ics.blogspot.com/ GPG: 1024D/D6336BA6 |
From: Egon W. <eg...@us...> - 2006-01-18 20:30:57
|
> > I don't understand what you mean... There doclet source should not have > > any key at all... > > > >From cdk/doc/javadoc/source/MakeJavaFilesFilesDoclet.java > > public void process(RootDoc root) throws IOException { > processPackages(root.specifiedPackages()); > > // output information in .javafiles and .classes files > Enumeration keys = cdkPackages.keys(); > while (keys.hasMoreElements()) { > --> String key = (String)keys.nextElement(); Ah... those keys are extracted from the java source code files. And when you removed the list java1.4 entry from FileConvertor, this entry was no longer present in the keys Enumeration either... > > Well, at least the FileConvertor had java1.4... you should know, you > > changed it today to java1.4+ :) > > Hmm. Right, I was wrong. While FileConvertor was set to 1.4 it worked. > > > Anyway, there was a clear reason to make the distinction: the > > FileConvertor could really only be compiled with java1.4 and *not* with > > java1.5, because it depended on CMLDOM. So, now it should really say > > @cdk.require java1.5 ... > > However, if we now set it to require 1.5 then there are no source files > that require 1.4. Then the above code will never find a key equal to > java1.4 and as a result java1.4.* files will not be written. Correct. And as you said, the build.xml should indeed be updated then. > > > (Commenting out the lines that look for java1.4.* makes the build work > > > fine) > > > > This is really weird because I have no problem at all with Sun JVM > > 1.5.0... > > Hmm. So with the current CVS (where no file has a cdk.require 1.4) the > current build.xml gives no errors? Incorrect. I get the errors too now. I wrote my previous email before I updated to the FileConvertor commit you made earlier :) I'll commited a build.xml in a moment with the java1.4 lines commented out. It will also include the *full* ../lib fix... I forgot to change that where javadoc was called, and earlier only modified where the file was being checked... but it's still ugly... why does Ant not just have an if equivalent ?!?!? :( Egon -- eg...@us... Blog: http://chem-bla-ics.blogspot.com/ GPG: 1024D/D6336BA6 |