2009-10-18 8 views
17

Ich bin auf der Suche nach dem Quellcode von Suns Standard-Java-Compiler, javac.Wo ist der Quellcode für den Java-Compiler?

jdk1.6.0_07 hat ein paar Klassen, die verwandt sind, aber sie sind Schnittstellen (java.lang.Compiler und javax.tools.JavaCompiler). Es gibt auch einige Pakete unter com.sun.mirror.* und com.sun.source.*, die Schnittstellen zum Repräsentieren des abstrakten Java-Strukturbaums zu sein scheinen.

Aber ich kann nicht die Compiler Quelle finden - Wer weiß, wo es ist?

Antwort

19

Prüfen Sie diese Seite The Java programming-language compiler (javac) group. Die Quellen befinden sich in den Mercurial-Repositorys.

jdk7/tl/langtools (für JDK 1,7)

jdk6/jdk6/langtools (für JDK 1.6)

Im Header der beiden Seiten, die ich Ihnen Download-Links für die Quellen finden verknüpft (in bz2, zip und gz-Format)

Dort haben Sie die Quellen in src \ classes \ share \ com \ Sonne \ tools \ javac \

+0

Dank! Ist die offizielle Sonne eins (das kommt mit dem jdk), keine Neuimplementierung? BTW: Der Parser scheint ein einfacher rekursiver Descent-Parser zu sein, der die JLS näher modelliert http://hg.openjdk.java.net/jdk6/jdk6/langools/file/a9008b46db24/src/share/classes/com/sun/tools /javac/parser/Parser.jav. , damit Sie die Grammatik nachvollziehen können. – 13ren

+1

Es sollte die offizielle sein. Wie seit ca. 2006 sind JDK/JRE opensource. Es gab eine Zeit, in der bestimmte Teile von JDK/JRE vielleicht auch Tools waren, die nicht komplett opensource waren, da es einige Lizenzprobleme gab. Wenn Sie wissen wollen, was Build jacac OpenSource ist, schlage ich vor, schreiben Sie die entsprechende openjdk Mailingliste – jitter

+0

Danke, durch die Quelle, einige haben die Sun Urheberrechtshinweis, und einige sagen explizit ihre API ist nicht Sun-unterstützt. – 13ren

Verwandte Themen