Eclipse se cierra con Gnome3

evitar cuelque de eclipse en gnome con archlinuxComo he ido comentando en algún que otro artículo Java es mi lenguaje de trabajo habitual y, como entorno de desarrollo o IDE, utilizo habitualmente Eclipse (una vez que superas su pronunciada curva de aprendizaje terminas cogiéndole cariño y amortizas la “inversión” de tiempo cuando te permite desarrollar, utilizando el mismo IDE, en diferentes lenguajes de programación: C++, PHP, …)

La semana pasada perdí casi una mañana entera en el trabajo porque, aprovechando que me habían asignado un equipo nuevo, opte por cambiar el sistema operativo de Ubuntu a Archlinux con Gnome 3 (llevaba tiempo queriendo hacer el cambio y ésta era la ocasión)

Horrorizado comprobé que la herramienta de trabajo diario se cerraba automáticamente cada vez que pinchaba en alguna de las vistas o intentaba moverlas de sitio.

Buscando la causa

Por desgracia no encontraba información en los logs y, como única respuesta sólo aparecían ficheros hs_err_pidNNNNN.log en el directorio de usuario con el contenido de la pila que había sido volcada por la máquina virtual de java (jvm)

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x61b8eb42, pid=16809, tid=3076159168
#
# JRE version: 6.0_25-b06
# Java VM: Java HotSpot(TM) Client VM (20.0-b11 mixed mode linux-x86 )
# Problematic frame:
# C  [libxul.so+0xc6cb42]  NS_UTF16ToCString_P+0x195cb
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

---------------  T H R E A D  ---------------

Current thread (0x09043c00):  JavaThread "main" [_thread_in_native, id=16809, stack(0xbfc0f000,0xbfc5f000)]

siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x00000008

Posibles soluciones

En un principio sospeché que el problema pudiese estar en el uso, por parte de Archlinux, de la última versión de la máquina virtual de java (la 1.6.0_25) pero tras hacer un par de pruebas quedó descartado.

Mirando el volcado de la pila, a todas luces parece que la causa se encuentra en la librería libxul.so del sistema (librería de Mozilla encargada de dar soporte a los formularios XUL a Gecko) buscando alguna solución al problema en Internet (no iba a ser yo el primero con éste error, ¿no?) encuentro las siguientes posibilidades

Desesperado me puse a experimentar (y maldecir con cada prueba errónea, como me descuide voy a tener que hacer un curso de educación emocional, ¿alquien me lo subvenciona? :P) hasta encontrar la que realmente lo ha solucionado.

Solución adoptada

Al final, y sin ser una solución definitiva mientras que no solucionen la dependencia de Eclipse con la versión anterior de libxul el remedio al problema pasa por eliminar la dependencia con el navegador web añadiendo, al final del fichero de configuración /usr/share/eclipse/eclipse.ini la siguiente línea

-Dorg.eclipse.swt.browser.XULRunnerPath=/dev/null

De este modo perdemos:

  1. la posibilidad de consultar la ayuda de Eclipse (no la usaba y si la necesito está colgada en Internet)
  2. la vista javadoc que tampoco uso habitualmente por lo que podré sobrevivir sin ella
En mi caso, la vista javadoc era la que hacía cerrarse el entorno de desarrollo 😦

Conclusión

Solución que me ha costado demasiadas horas encontrar y que he optado por compartir para que todos aquellos programadores que se encuentren el problema no tengan excusa para darle una oportunidad a Gnome-shell 😉

Espero que pronto se actualice el proyecto Eclipse y podamos utilizarlo sin tener que recurrir a este parche.

14 comentarios en “Eclipse se cierra con Gnome3

  1. Arsene1412 dijo:

    Había leido en varios foros el error, no uso Eclipse (uso Geany) pero es una puta que una herramienta de trabajo “imprescible” de fallos como estos. Es el precio por tener las últimas actalizaciones, y más con actualizaciones tan grandes como ha sido la del gnomo

  2. Interesantísimo. La verdad, si no hubieras mencionado que lo usas para C++ y PHP te hubiese recomendado IntelliJ Idea… Lo he usado solo durante dos meses (comparado con 4 años de eclipse no es mucho), y me ha parecido alucinante.

    Un saludo, y gracias por compartir este tipo de información.

    • Mi querido amigo Monzisez, esto es solo el comienzo del cambio que dará el informático de guardia en las próximas semanas. Con permiso al “INFORMATICO”, el equipo ha crecido, y el blog, cada vez más se esta expandiendo, y sólo hay una manera de ayudar a este máquina, uniéndonos todos para que esto se convierta en una gran comunidad.

  3. Gnome-shell da bastantes problemas, y no sólo me refiero a que cierre Eclipse nada más abrirlo. A mi me pasa con JDownloader, que también utiliza una máquina virtual Java. Si tengo JD abierto, no puedo abrir el “Monitor de sistema”; el PC se cuelga casi siempre si tengo abierto un rato el JD; y otras lindezas como esta.

    Gnome-shell utiliza demasiados recursos, el portátil se calienta sobremanera cuando lleva unos minutos encendido (y no creo que seas sólo por el verano).

    A pesar de estar con Archlinux, la impresión que me da es que Gnome-shell es bastante inestable aún, espero que ser resuelva con el tiempo. Con Arch intento hacer una actualización diaria, pero a veces eso hace que sea más inestable, ja, ja.

    Saludos.

    • Al final me decidí a utilizarlo en el equipo del trabajo (en el que al fin y al cabo paso la inmensa mayoría del tiempo delante de una pantalla) y aunque no es tan estable como debería no he tenido tantos problemas como mencionas (¿no será un fallo de jDownloader?).

      Lo único que observo es que las aplicaciones Java maximizadas no funcionan correctamente (sobre todo los menús).

      De todos modos, para mi resulta un entorno divertido pues tiendo a disfrutar configurando, investigando y solucionando problemas (alma de masoca que tiene uno ;))

  4. Herson Sámano dijo:

    ya se que este post es muy vieja pero para los que lleguen a caer por aquí solo basta editar el archivo eclipse.ini al final del archivo ponemos la linea siguiente linea:

    -Dorg.eclipse.swt.browser.DefaultType=mozilla

    y no se sacrifica la ayuda de eclipse saludos y suerte espero les sirva!

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