Mengatasi Problem Crash Eclipse Helios Karena XULRunner

Posted on June 3, 2011

0


Jika anda menggunakan OS Linux (dan mungkin di *nix lainnya), kemungkinan akan terjadi masalah saat update Firefox ke 4.*. Saya menggunakan Firefox 4.0.1 dan ini mengakibatkan sistem secara otomatis mengupdate XULRunner menjadi versi 2.0 (saya menggunakan Arch Linux dan pacman secara otomatis mengupdate). Update ini secara otomatis akan “menghancurkan” software lainnya yang memerlukan XULRunner < 2.0, diantaranya adalah Eclipse Helios. Pada saat mengakses bagian-bagian yang perlu menampilkan internal browser (Help Contents misalnya), Eclipse akan crash:

[bpdp@bpdp-arch eclipse]$ ./eclipse
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x8a008b42, pid=1872, tid=3076855488
#
# 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
#
# An error report file with more information is saved as:
# /opt/eclipse/hs_err_pid1872.log
#
# 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.
#
Aborted
[bpdp@bpdp-arch eclipse]$

Dari log di atas, kita bisa melihat bahwa problematic frame terletak di libxul yang berasal dari XULRunner.

Solusi dari masalah di atas sebenarnya sederhana saja, cukup dengan menginstall XULRunner runtime versi 1.9.2.* di sembarang direktori dan mengarahkan Eclipse untuk menggunakan XULRunner tersebut (sebaiknya ini eksklusif untuk Eclipse atau aplikasi lain yang memerlukan). XULRunner tersebut bisa diperoleh di:

http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/1.9.2.17/runtimes/

Setelah itu, konfigurasi eclipse.ini sebagai berikut:

[bpdp@bpdp-arch xulrunner]$ cat /opt/eclipse/eclipse.ini
-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.2.R36x_v20101019_1345
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Xms256m
-Xmx1024m
-XX:PermSize=64m
-Xss1M
-server
-XX:+DoEscapeAnalysis
-Dorg.eclipse.swt.browser.XULRunnerPath=/home/bpdp/master/xulrunner/xulrunner/
[bpdp@bpdp-arch xulrunner]$

Perhatikan bahwa -Dorg.eclipse.swt.browser.XULRunnerPath=/home/bpdp/master/xulrunner/xulrunner/ adalah lokasi direktori tempat mengekstrak XULRunner.

Happy coding with Eclipse!

Advertisement