Mostrando entradas con la etiqueta Eclipse. Mostrar todas las entradas
Mostrando entradas con la etiqueta Eclipse. Mostrar todas las entradas

domingo, 3 de marzo de 2013

Guía Instalación JFlex en eclipse.

Pues siguiendo con la línea de tutoriales, hoy le toca a JFlex.
Que es lo mismo que Flex pero para java, porque a mí no me gusta C.

Todos deben saber para qué sirve, creo yo...

Primero, descargamos la última versión disponible, a la fecha de publicación es la 1.4.3.

http://jflex.de/jflex-1.4.3.zip

Dentro del programa tiene instrucciones de instalación, pero como nunca les entendí, así que les enseñaré a integrarlo a eclipse.

En eclipse, creamos un proyecto nuevo, luego seleccionamos java project y le ponen el nombre que quieran, yo le puse JFlex

Ahora le dan clic a la carpeta del proyecto para que les salga la carpeta de src, ahí le dan clic derecho, luego new y luego File.

A ese archivo le ponen el nombre que quieran pero tiene que terminar con flex, yo le puse Lexer.flex, pueden dejarlo vacío, este archivo será la especificación léxica con la que trabajará nuestro JFlex..

Ahora crearán otro archivo, pero este se llamará entrada.txt, o lo que quieran ponerle de nombre, a diferencia del Lexer.flex que pusimos en src, el archivo entrada.txt lo haremos en la carpeta principal, es decir, ahora daremos clic derecho en JFlex en vez de en src.

El nuevo archivo debe aparecer debajo de JRE System Library.

Ahora tienen que irse al menú de eclipse, donde dice RUN, luego External Tools, y luego External Tools Configuration.

Seleccionan donde dice Program, luego le dan click derecho y le dan NEW

En nombre le dan el nombre que quieran, yo le puse JFlex.

En location, vamos a poner la ruta hasta el archivo de java.exe, denle browse file system, y luego ya saben, nuestra querida carpeta del JDK, luego a bin y ahí lo buscan.

En working directory le ponen browse Workspace, luego le dan a JFlex [así se llama mi proyecto] luego a src y aceptar, tiene que salir algo como esto: ${workspace_loc:/JFlex/src} [o si quieren copien y peguen y nomás le cambian JFlex por como le pusieron ustedes.

En los argumentos le ponen:
-cp C:\Users\Jass\Documents\Escuela\Compiladores\jflex-1.4.3\lib\JFlex.jar JFlex.Main -nobak Lexer.flex

Sustituyendo obviamente su carpeta para que coincida a donde descomprimieron el zip que bajaron al principio.

Ahora vayan a la pestaña de Refresh y seleccionen la opción de  "Refresh resources upon completion"
Y seleccionan The entire Workspace.
También pongan palomita en Recursively include subfolders.

Y listo, denle Apply y cierren la ventana, si le dan run va a tirar error porque nuestro archivo no tiene nada.

Ahora vamos a probar que funcione.
Rellenen el archivo con lo siguiente...


/*Aquí van los import*/
%%
%standalone
DIGITOS = [0-9]
/*Aquí van las especificaciones de Tokens*/
%%
/*Aquí van las acciones al encontrar tokens*/
{DIGITOS} {System.out.println("Digito");}

Denle a donde está el botoncito de compilar, pero el que tiene una cajita de herramientas de color rojo, es el de la derecha, ahí tiene una flechita, denle y debe salir JFlex.

Si hicieron todo bien, debería generarse una clase llamada Yylex.java en su default package.

Ahora, váyanse a la pestaña Run de eclipse de nuevo, pero esta vez seleccionaremos la opción de Run Configurations,  sale una ventana, denle donde dice Java Application y busquen la clase YyLex y selecciónenla, ahora a la derecha hay pestañas, váyanse donde dice Arguments y en el cuadro pónganle entrada.txt y denle Apply, ahora sí, denle RUN.

Si no tira errores, ya está bien configurado.

De ahora en adelante simplemente editaremos el archivo de entrada.txt o el de Lexer.flex, dentro del mismo eclipse te permite hacerlo.

Para probarlo, editen el archivo de entrada.txt y póngale números y espacios y cosas...

Ya que lo editan, le dan al botón de compilar [el rojito] y luego a compilar el normal, y les debería aparecer "Digito" "Digito" y así, si le pusieron otras cosas al archivo, se imprimirán tal cual ya que lo que JFlex no reconoce, lo imprime en pantalla. 



Yo sé que al manual le faltan imágenes y cosas así...

Yo saqué esta información de este enlace:
http://www.lsi.us.es/docencia/get.php?id=5840

Así que dense una vuelta, usan una versión diferente de eclipse, pero no deberia ser problema ajustar las cosas con lo que expliqué anteriormente.
¡Saludos!

martes, 25 de diciembre de 2012

JMagick

Hola amigos, como he visto que existen un poco de problemas a la hora de instalar y usar ImageMagick para java, vamos a ver una sencilla guía para instalarlo en eclipse.

Lo primero que tenemos que hacer es bajar los DLL de ImageMagick, recordemos que en un principio está diseñado para tratamiento de imágenes en C, y lo único que lograremos con JMagick es poder usar ciertas funciones de esas librerías, en lenguaje Java.

¿Por qué usar JMagick? Porque el formato que puede leer ImageMagick en imágenes es muy basto, sirve para PNG, JPG, incluso PGM, todo lo pasa a una matriz de píxeles con el espacio de color RGB, en caso de que sean blanco y negro, los 3 canales tienen la misma intensidad.

Lo que tenemos que descargar es lo siguiente:


El paquete de DLL's
http://downloads.jmagick.org/6.3.9/ImageMagick-6.3.9-0-Q16-windows-dll.exe

La interfaz de JMagick
http://downloads.jmagick.org/6.3.9/jmagick-win-6.3.9-Q16.zip

Ojo que tienen que checar que la versión de DLL corresponda con la versión de JMagick, la última que encontré fue la 6.3.9

Ahora, en eclipse, simplemente tenemos que agregar en el build path el jar que viene de JMagick.

Esto es:
En el proyecto actual, click derecho y luego propiedades.
Cliqueamos en Java Build Path y damos add external JAR.
Buscamos el jar que bajamos de Jmagick, de preferencia pongan el jar en el classpath de su JDK.

El mío es por ejemplo:

C:\Program Files (x86)\Java\jre7\lib

Ahí adentro aventamos el archivo de jmagick.jar

Ahora, el DLL jmagick.dll del comprimido se manda a la carpeta de binarios, en mi caso:

C:\Program Files (x86)\Java\jre7\bin

Ahora, después de agregarlo en el proyecto, le vamos a picar, a la flechita que saldrá de despliegue, teniendo seleccionado el jmagick.jar en la misma ventana de propiedades sale una barrita que dice Native Libraries Location, en esa damos doble clic y donde está el boton external folder, vamos a buscar donde descomprimimos el contenido de los DLL de ImageMagick, en mi caso lo aventé en C:/Windows/System32/ para que no haya broncas.

Finalmente damos aceptar.

Listo ya tenemos funcionando el JMagick.
Pronto les dejaré una pequeña clase que transforma una imagen leída de imagemagick a un bufferedImage de java para que lo puedan usar en etiquetas o lo que les dé en gana.