Eclipse va muy lento

eclipse_icon

Una de los mejores entornos de programación para Java, por no decir el mejor, es Eclipse. Está disponible para todas las plataformas habidas y por haber aunque se da el caso de que al bajarlo para Ubuntu por medio del sistema de paquetes su ejecución suele ser demasiado lenta. Esto ocurre a causa de que Eclipse está desarrollado en Java y por defecto se va a utilizar para su ejecución la implementación libre de la máquina virtual de Java conocida como GIJ (GNU Interpreter for Java).

He tenido la oportunidad de estudiar a fondo esta herramienta y comprobé que es muchísimo más lenta que su equivalente privativo por lo que si priorizamos la velocidad de ejecución recomiendo utilizar en nuestro sistema la versión de Sun. Eso hará que Eclipse se ejecute con mayor agilidad.

Leer más …

Anuncios

Conociendo el FSTAB y sus opciones

Una de las dudas más comunes que abordan a los usuarios nuevos en el mundo de GNU/Linux trata sobre el montaje automático de las particiones y de sus permisos. Las órdenes de montaje y sus opciones se encuentran alojadas en el fichero /etc/fstab.

Normalmente, al instalar distribuciones como Ubuntu, en el fstab se generan las líneas de montaje de nuestras particiones automáticamente pero de un modo genérico. Muchos habrán visto que si lo dejamos tal cual, los nombres de los archivos de la partición al hacer un ls aparece en color verde. Esto ocurre cuando los ficheros tienen permisos de ejecución. Sin más vamos a entrar en materia.

Leer más …

Makefiles & GNU GCJ

Como ya conté en anteriores posts, en mi proyecto de fin de carrera tenía que compilar una librería de clases Java bastante extensa con GNU GCJ. Es bastante sencillo compilar una clase simple, incluso compilar varias de ellas a mano, pero en el caso de una colección importante, el compilar y enlazar es una tarea muy larga y aburrida.

En su momento estuve buscando cómo podía automatizar esta tarea de compilación por medio de herramientas diseñadas para esta labor. Lo primero que se me ocurrió fue crear un paquete de instalación por medio de las GNU Autotools pero al mirar en la documentación pude comprobar que no había soporte para GCJ por lo que elegí una de las herramientas que se incorporan en este paquete: GNU Make.

Leer más …

El Classpath de GCJ

En esta entrada voy a ir completando lo comentado en la introducción a GCJ. Ya expliqué entonces como podemos compilar una clase sencilla, sin dependencias de otras, de manera que obtendremos un ejecutable de la misma manera que si utilizásemos otros lenguajes como C/C++.

La dependencia entre clases en Java se satisface a través del classpath, una variable de entorno (aunque hay otras formas de especificarlo) en la que se enumeran los directorios en los que se encuentran clases o paquetes utilizados. La comprobación se realiza, en el caso de Java, además de al compilar a bytecodes, en tiempo de ejecución de manera que si nos falta una clase, se nos lanzará una excepción del tipo classnotfound; con GCJ esto no es así.

Leer más …

Introducción a GNU GCJ

java

Si algo he aprendido en el desarrollo de mi proyecto de fin de carrera es a utilizar GNU GCJ, cuáles son sus características, qué puede aportar a Java y cómo se utiliza. Cuando empecé a investigar busqué tutoriales sobre cómo compilar con este software y me encontré con apenas un par de ellos medianamente decentes pero insuficientes para mi propósito, que era compilar una librería de clases bastante grande.

Casi todo lo que he aprendido lo he hecho mirando tutoriales en inglés, leyendo la documentación y puede que aparentemente no sea gran cosa pero no fue sencillo. En esta entrada quiero dejar una introducción al uso básico de GCJ y en un futuro ir completando el manual con algunos posts más.

Leer más …