Eclipse的Browser或者代码中弹出的提示,都是HTML内容,需要显示在浏览器中。在Windows中默认使用IE,在Linux中默认使用mozilla。今天碰到个问题,Eclipse已启动,鼠标移到代码上等待弹出注释,接着Eclipse就立马挂了。查看crash log发现是和mozilla有关,应该是无法启动mozilla浏览器内核。
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j org.eclipse.swt.internal.mozilla.XPCOM._NS_InitXPCOM2(JJJ)I+0 j org.eclipse.swt.internal.mozilla.XPCOM.NS_InitXPCOM2(JJJ)I+11 j org.eclipse.swt.browser.Mozilla.initXPCOM(Ljava/lang/String;Z)V+567 j org.eclipse.swt.browser.Mozilla.create(Lorg/eclipse/swt/widgets/Composite;I)V+251 j org.eclipse.swt.browser.Browser.<init>(Lorg/eclipse/swt/widgets/Composite;I)V+81 j org.eclipse.jface.internal.text.html.BrowserInformationControl.isAvailable(Lorg/eclipse/swt/widgets/Composite;)Z+12
Eclipse上一个文档说要设置MOZILLA_FIVE_HOME,但是还是不行,估计是系统mozilla没装好。最终解决方法,配置eclipse.ini使用XULRunner,这个XULRunner项目本身就有。在-vmargs里加入:
-Dorg.eclipse.swt.browser.XULRunnerPath=/xulrunner/path