Crear aplicaciones Java basadas en GTK+

javagtk1

GTK+ es un kit de herramientas multiplataforma, cuenta soporte para un gran número de lenguajes de programación y es utilizado para el desarrollo de interfaces gráficas (GUI), si vas empezando con java o con GTK+ te recomiendo que leas la documentación API de java-gnome, una guiá útil para empezar a desarrollar tus propias aplicaciones.

Para empezar, y tener lo necesario para poder desarrollar interfaces de usuarios usando en conjunto Java y Gtk+ en Linux, tendremos que tener las  siguientes  librerías development: Cairo, GLib, GTK+, Pango, RSVG, ATK, GtkSourceView, Enchant, dependiendo de tu distribución procederías a instalarlas. Ahora pasaríamos a descargar  java-gnome que son las librerias de GTK+ para ser usadas en Java, para descargarlo nos dirigimos al los archivos Ftp de Gnome http://ftp.gnome.org/pub/gnome/sources/java-gnome/4.1/, en este caso trabajare con la versión java-gnome-4.1.3, habiendo descargado y descomprimido el archivo, ejecutaran desde la terminal el archivo configure.

$ ./configure

equivalence, v0.2
...configuring Java projects to build and run on Linux & Unix

Identify operating system:         Fedora                             
Check for required jar files:
 - JUnit test framework            found

Check for required system libraries:
 - Cairo                           found
 - GLib                            found
 - GTK+                            found
 - Pango                           found
 - RSVG                            found
 - ATK                             found
 - GtkSourceView                   found
 - Enchant                         found

Check Java compilers:
 - System Default javac            works
 - System Default javah            found
 - System Default jar              works
 - System Default javadoc          found

Check Java virtual machines:
 - System Default java VM          works

Check native compiler:
 - GNU gcc                         works

Select compiler:                   javac
Select runtime:                    java

Output:
 - configuration data              ok
 - native library location         ok

Si la ejecución de configure no tubo errores, les tendrá que aparecer algo similar, seguido utilizaremos el archivo Makefile que generara unos archivos copilados, para eso ejecutaremos el siguiente comando:

$ make

La copilacion demora un par de segundos

La instalación se puede hacer en la ruta que prefieran, en mi caso cree una carpeta en home,  donde esta localizado java-gnome, para proceder a la instalación solo es de tipear los siguientes comandos.

$ ./configure prefix=~/LugarDondeSeEncuentra/GtkJava

...
...
...

$ make install
MKDIR	installation directories
INSTALL	/LugarDondeSeEncuentra/GtkJava/share/java/gtk-4.1.jar
JAR	/LugarDondeSeEncuentra/GtkJava/share/java/gtk-4.1.jar
SYMLINK	/LugarDondeSeEncuentra/GtkJava/share/java/gtk.jar -> gtk-4.1.jar
INSTALL	/LugarDondeSeEncuentra/GtkJava/lib/libgtkjni-4.1.3.so

Después del ‘prefix=’ es donde quieres que se proceda la instalación

Ya tenemos lo necesario para desarrollar utilizando la API y con las bibliotecas Gtk+ utilizando como lenguaje de programación Java. Dejare un pequeño programa que podrán descargar dando click aquí, por tanto para copilar y ejecutar una clase mandaremos a llamar a  gtk-4.1.jar.

$ javac -classpath /LugarDondeSeEncuentra/GtkJava/share/java/gtk-4.1.jar origendata/OrigenData.java
$ java -classpath /LugarDondeSeEncuentra/GtkJava/share/java/gtk-4.1.jar:. origendata.OrigenData

Captura de pantalla de 2015-07-31 10-21-16

Captura de pantalla de la clase ya copilada

Si no te agrada  el estar escribiendo en la terminar para poder copilar, y a parte usas Eclipse, lo mas efectivo es agregar en las librerías de Eclipse a gtk-4.1.jar y con esto resultaría menos laborioso el estar copilando.

Captura de pantalla de 2015-07-31

Captura de Eclipse, agregando ‘gtk-4.1.jar’ y arrancando la clase

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s