Buscar..


Instalación y configuración

Cómo instalar ANTLR en Eclipse

(Última prueba en Indigo y ANTLR IDE 2.1.2)

  1. Instale Eclipse.
  2. Descarga el tarro de binarios completo de ANTLR que incluye ANTLR v2. Extraer a un directorio temporal. Copie la carpeta antlr-nn en una ubicación permanente apropiada, por ejemplo, la misma carpeta en la que está instalado Eclipse.
  3. Agregue el sitio de actualización IDE de ANTLR a Eclipse.
    • En Eclipse, haga clic en Ayuda y seleccione Instalar nuevo software.
    • Haga clic en el botón Agregar ...
    • En la ventana Agregar repositorio, para Ubicación escriba http://antlrv3ide.sourceforge.net/updates y escriba algo como ANTLR IDE para el Nombre y haga clic en Aceptar para volver a la ventana de Software disponible.
    • Marque la casilla de ANTLR IDE vn.nn y haga clic en hasta que esté instalado. Eclipse probablemente se reiniciará.
  4. Configurar el IDE ANTLR.
    • En la ventana principal de Eclipse, haga clic en Ventana y luego en Preferencias.
    • En el panel izquierdo, expanda ANTLR y seleccione Generador.
    • En el panel derecho, haga clic en el botón Agregar ...
    • En la ventana Agregar paquete ANTLR, haga clic en Directorio ... y navegue hasta la ubicación de la carpeta antlr-nn y haga clic en Aceptar.
    • Haga clic en Aceptar para cerrar la ventana Agregar paquete ANTLR.
    • Seleccione Generador de código en el panel izquierdo y haga clic en la carpeta relativa al Proyecto en el panel derecho. Escriba un nombre de carpeta. Ejemplos: antlr-java o antlr-generados.
    • Seleccione cualquier otro parámetro de configuración pero NO marque –nfa o –dfa en la sección General en la ventana de Construcción. Si está marcado, esto causará errores ANTLR que impiden que se generen archivos java en la carpeta de salida.
    • Haga clic en Aceptar para cerrar la ventana de Preferencias.
  5. Crea un nuevo proyecto Java y habilita el soporte ANTLR.
    • Desde la ventana principal de Eclipse, vaya a Archivo, Nuevo, Proyecto Java. Haga clic en Siguiente, escriba un nombre de proyecto y haga clic en Finalizar.
    • Para habilitar el soporte de ANTLR para el proyecto, en la ventana del Explorador de paquetes (panel izquierdo), haga clic con el botón derecho en el proyecto que acaba de crear y seleccione Configurar, Convertir a proyecto ANTLR.
    • Agregue el archivo jar completo de ANTLR al proyecto: haga clic con el botón derecho en el proyecto y seleccione Propiedades, Java Build Path, haga clic en Agregar JAR externos ..., busque el archivo jar de ANTLR, selecciónelo y haga clic en Aceptar. Haga clic en Aceptar para cerrar la ventana Propiedades del proyecto.
  6. Crear una gramática ANTLR.
    • Cree una nueva gramática ANTLR: haga clic con el botón derecho en la carpeta src del proyecto, luego en Archivo, Nuevo, Otro, expanda ANTLR y seleccione Gramática combinada. Haga clic en Siguiente, escriba el nombre de la gramática, seleccione una opción de Idioma y haga clic en Finalizar.
    • Se crea un archivo ".g" con las opciones seleccionadas y una regla en blanco. Agregue las opciones language = Java, @header, @lexer :: header y @members en la parte superior (vea el ejemplo). La finalización automática es la forma más fácil de agregarlos (presione CTRL-espacio para que aparezca la lista de finalización automática).
  7. Guarda la gramática.
    • Cuando se guarda, una carpeta que contenga el código Java generado para la gramática debe aparecer en el Explorador de proyectos. Si no es así, asegúrese de que las opciones –nfa o –dfa no estén marcadas en Preferencias ANTLR en General en la ventana de Construcción (Paso 4g). [Confirme si es necesario: verifique que la variable de entorno CLASSPATH apunta al Java7 que coincida con su instalación de Eclipse (32 o 64 bits) y la variable de entorno de Windows Path tenía Java7 SDK.]
    • Para evitar errores de Java "no se pueden resolver en un tipo", haga clic con el botón derecho en la carpeta que contiene el código Java generado, luego en Crear ruta, Usar como carpeta de origen.

MUESTRA COMBINADA DE GRAMÁ

grammar test; //must match filename.g

options {
    language = Java;
}

@header { //parser
    package pkgName; //optional
    import java.<whatever you need>.*;
}

@members { //parser
    // java code here
}

@lexer::header { //lexer
    package pkgName; //optional
    import java.<whatever you need>.*;
}

@lexer::members {
    // java code here
}
/*------------------------------------------------------------------
 * PARSER RULES (convention is all lowercase)
 *------------------------------------------------------------------*/
parserule: LEXRULE;

/*------------------------------------------------------------------
 * LEXER RULES (convention is all uppercase)
 *------------------------------------------------------------------*/
LEXRULE: 'a'..'z';


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow