Re: Using sun javac to parse java source
Arne Vajh=F8j wrote:
Lew wrote:
Arne Vajh=F8j wrote:
Alex J wrote:
I'm curious whether it is possible to use JavacParser -
http://docjar.org/docs/api/com/sun/tools/javac/parser/JavacParser.html
- built-in to OpenJDK to parse standalone java files (though claimed
to be "internal use only API"). I googled but I've found no answers.
Java 1.6 and newer contains a supported callable Java compiler.
Use that.
+1.
Java 5 and older are obsolete, so that settles that.
<http://en.wikipedia.org/wiki/Java_version_history#J2SE_5.0_.28September=
_30.2C_2004.29>
If you only want to syntax check you will need to discard the
generated byte code in case of success, but that is easy.
The API is a bit complex many would say over engineered, but
it works fine.
It pays to know the API.
<http://download.oracle.com/javase/6/docs/api/javax/tools/package-frame.=
html>
Sure, but it is still a complex API.
Yes, it is. That isn't a reason not to know it, if you need that functiona=
lity.
Pardon my confusion, but aren't we both recommending the same API? Are you=
suggesting that they not know this API now?
Perhaps you misunderstand me to suggest that by "know the API" I do not mea=
n to study the finer points of how to use it?
Could anyone infer that by pointing to the first step on the road to knowle=
dge that I mean they should sit on the curb at the beginning and go no furt=
her?
Or perhaps you believe that after pointing the OP to the beginning of that =
journey I should do all the research for them, and Google on their behalf f=
or all the further reading that they should do, or even read it for them an=
d feed it predigested to them like a mommy-bird feeding her pre-fledgling b=
abies?
I see nothing in my earlier post to suggest that it is not a complex API, o=
r that they should stop at the first indicated signpost.
The value of the link to the API is that it shows some basic information, a=
nd given a certain level of programming experience or commitment or both it=
can lead them into study and experimentation that will solve their problem=
.. It indicates that the API is, indeed, standard, and gives hope that ther=
e is a solution. There has been no assertion that competence with the API =
ends with reading the Javadocs.
--
Lew