2009-10-18 18 views
17

Estoy buscando el código fuente del compilador de Java estándar de Sun, javac.¿Dónde está el código fuente del compilador de Java?

jdk1.6.0_07 tiene algunas clases que están relacionadas, pero son interfaces (java.lang.Compiler y javax.tools.JavaCompiler). También hay algunos paquetes en com.sun.mirror.* y com.sun.source.*, que parecen ser interfaces para representar el árbol de sintaxis abstracta de Java.

Pero no puedo encontrar la fuente del compilador, ¿alguien sabe dónde está?

Respuesta

19

Revise este sitio The Java programming-language compiler (javac) group. Las fuentes están en los repositorios de Mercurial.

jdk7/tl/langtools (por JDK 1,7)

jdk6/jdk6/langtools (JDK 1.6)

En la cabecera de los dos sitios he vinculado a encontrar enlaces de descarga de las fuentes (en formato gz bz2, zip y)

Ahí lo tienes las fuentes en src \ share \ classes \ com \ Sun \ tools \ javac \

+0

gracias! ¿El sol oficial es uno (que viene con jdk), no una reimplementación? Por cierto: el analizador sintáctico parece ser un simple analizador sintáctico de descenso recursivo, que modela de cerca el JLS http://hg.openjdk.java.net/jdk6/jdk6/langtools/file/a9008b46db24/src/share/classes/com/sun/tools /javac/parser/Parser.jav. para que pueda rastrear a través de la gramática. – 13ren

+1

Debe ser el oficial. Como desde aprox. 2006 JDK/JRE son de código abierto. Hubo un momento en que ciertas piezas de JDK/JRE tal vez las herramientas no eran completamente de código abierto, ya que había algunos problemas de licencia. Si desea saber cómo construir exactamente el código fuente abierto de javac, le sugiero escribir en la lista de correo abierta de openjdk. – jitter

+0

Gracias, mirando a través de la fuente, algunos tienen el aviso de derechos de autor de Sun y algunos dicen explícitamente que su API no es compatible con Sun. – 13ren

Cuestiones relacionadas