Академический Документы
Профессиональный Документы
Культура Документы
CONTENIDO
CONSIDERACIONES PREVIAS ................................................................................... 4
Integracin de JFlex ......................................................................................................... 5
1. Creacin de un proyecto nuevo ............................................................................ 5
2. Creacin de Lexer.flex....................................................................................... 6
3. Incorporacin del fichero de entrada al proyecto ................................................. 8
4. Compilacin con JFlex ......................................................................................... 8
5. Ejecucin del proyecto ....................................................................................... 11
6. Desactivacin de la compilacin automtica ..................................................... 14
Integracin de Cup ......................................................................................................... 15
7. Creacin de Parser.cup .................................................................................... 15
8. Compilando con Cup .......................................................................................... 15
9. Incorporando java_cup.runtime al proyecto....................................................... 16
10.
Creacin de la clase Inicio ........................................................................... 17
11.
Ejecucin del proyecto (con Cup) .................................................................. 19
Apndice 1 Lnea de rdenes....................................................................................... 20
Apndice 2 Sin JFlex.bat y Cup.bat ....................................................................... 21
Apndice 3 Automatizando la compilacin................................................................. 23
Apndice 4 Incluir clases auxiliares (Cup).................................................................. 25
FIGURAS
figura 1. New Project........................................................................................................ 5
figura 2. Datos del proyecto nuevo................................................................................... 6
figura 3. Opcin para crear un fichero nuevo................................................................... 6
figura 4. Especificando el nombre del fichero nuevo....................................................... 7
figura 5. Fichero 'Lexer.flex' recin creado ...................................................................... 7
figura 6. Men de herramientas externas.......................................................................... 8
figura 7. Ventana inicial de herramientas externas........................................................... 9
figura 8. Configuracin para ejecutar JFlex ..................................................................... 9
figura 9. Opciones para actualizar el proyecto ............................................................... 10
figura 10. Acceso rpido a las herramientas externas .................................................... 10
figura 11. Error al estar 'Lexer.flex' vaco ...................................................................... 11
figura 12. Acceso a las opciones de ejecucin del proyecto .......................................... 12
figura 13. Ventana inicial de opciones de ejecucin ...................................................... 12
figura 14. Creando una configuracin de ejecucin ....................................................... 13
figura 15. Especificando los argumentos del programa ................................................. 13
figura 16. Acceso rpido a las configuraciones de ejecucin......................................... 14
figura 17. Opcin de compilacin automtica................................................................ 14
figura 18. Configuracin para ejecutar Cup ................................................................... 15
figura 19. Importando 'java_cup.runtime'....................................................................... 16
figura 20. Opcin para crear una clase nueva................................................................. 17
figura 21. Creacin de una clase nueva .......................................................................... 18
figura 22. Nueva clase 'Inicio' con el mtodo 'main' ...................................................... 18
figura 23. Configuracin de ejecucin con Cup ............................................................. 19
figura 24. Configurando JFlex sin usar 'JFlex.bat' ......................................................... 21
figura 25. Configurando Cup sin usar 'Cup.bat' ............................................................. 21
figura 26. Lista de constructores del proyecto................................................................ 23
figura 27. Seleccionando los constructores de Cup y JFlex ........................................... 24
figura 28. Constructores que intervienen en el proyecto ................................................ 24
figura 29. Errores por falta de clases auxiliares de Cup ................................................. 25
figura 30. Propiedades del proyecto - Libraries ............................................................. 26
figura 31. Enlazando las clases de Cup al proyecto ....................................................... 27
figura 32. Clases a aadir al proceso de compilacin..................................................... 27
figura 33. Mensaje de aviso de filtros de exclusin ....................................................... 27
figura 34. Propiedades del proyecto con las clases auxiliares aadidas......................... 28
figura 35. Propiedades del proyecto - Order and Export................................................ 29
figura 36. Ficheros generados sin errores....................................................................... 29
figura 37. Propiedad Read-only de las clases externas incluidas ................................... 30
CONSIDERACIONES PREVIAS
Esta gua se ha desarrollado bajo las siguientes
condiciones de trabajo:
1.
2.
3.
4.
workspace = C:\workspace
directorio de JFlex = C:\JFlex
directorio de Cup = C:\Cup
java.exe utilizado = C:\j2sdk1.4.2_05\bin
Integracin de JFlex
Vamos a crear un proyecto Java donde se hace uso de la herramienta
JFlex. Se trata de un ejemplo muy sencillo, donde incluiremos un
analizador lxico representado por una clase llamada Lexer1.
2. Creacin de Lexer.flex
A continuacin creamos el fichero Lexer.flex (nuestro analizador
lxico en JFlex). Para ello pulsamos el botn derecho del ratn sobre
el nombre del proyecto y seleccionamos la opcin NewFile (figura
3).
10
11
12
13
14
Integracin de Cup
Suponemos que el proyecto ya incluye el fichero Lexer.flex2, el de
entrada y que est creada la configuracin para ejecutar JFlex.
7. Creacin de Parser.cup
Los pasos que hay que seguir para crear el fichero Parser.cup son
los mismos que para el fichero Lexer.flex cambiando el nombre en la
ventana de la figura 4.
Se supone que no est siendo utilizada la directiva %standalone (incompatible con el uso de Cup)
15
16
17
18
19
20
21
Si lo hacemos sobre un fichero incompatible con JFlex nos saldr un error de especificacin no vlida
22
23
24
25
26
27
figura 34. Propiedades del proyecto con las clases auxiliares aadidas
28
29
30