RFR (S) 8073550 : java* tools: replace obj.getClass hacks with Assert.checkNonNull or Objects.requireNonNull
Jonathan Gibbons
jonathan.gibbons at oracle.com
Thu Feb 26 00:43:11 UTC 2015
On 02/25/2015 04:25 PM, Maurizio Cimadamore wrote:
>>
>> 3. In general, we should not depend on the javac internal Assert
>> mechanism outside of javac.
> Uh - ok. Not sure I fully buy this - i.e. javadoc reuses 99% of javac
> so I'm not sure what buys us not to use Assert mechanism there...
The com.sun.tools.classfile library is currently stand-alone, totally
separate from javac. It has even been backported into JDK 6. It seems
wrong/unnecessary to introduce a new dependency on a minor javac utility
class.
In separate, somewhat unrelated discussions, we have talked about doing
more with the javac Assert mechanism, and possibly recording more of the
execution environment, in a somewhat more formalized way. That would
likely depend on support code in the javac Main program, where we catch
and handle all the exceptions that might come out of the javac
internals. javadoc does not share/reuse that part of javac.
Separately, the ongoing cleanup of the javac doclet API (JEP 221:
http://openjdk.java.net/jeps/221) will significantly reduce javadoc's
need to access javac internal API. So, it's good to keep the
dependencies down.
-- Jon
More information about the compiler-dev
mailing list