Eclipse Photon 外掛程式在使用 _cairo_operator_bounded_by_source 時損毀:主張:'NOT REACHED' 失敗。

在 Red Hat Linux 上,於安裝適用於 Eclipse Photon 的 Eclipse 外掛程式之後,按一下報告中造成 Eclipse 損毀的「位置」(或觸發將編輯器開啟至原始碼行的任何動作)。

症狀

在 Eclipse 損毀之後,主控台包含下列錯誤:
*WARNING: SWT requires Cairo 1.9.4 or newer
*WARNING: Detected: 1.8.8
...
...
java:cairo-misc.c:380:_cairo_operator_bounded_by_source: Assertion 'NOT REACHED' failed.

原因

在系統上偵測到舊版本的 Cairo。SWT 需要 Cairo 1.9.4 或更新版本。

解決

更新 Cairo 版本。

但是,某些 RHEL 系統可能不支援最新的 Cairo 版本。例如,已安裝 Cairo 1.8.8 的 RHEL 6.8:
>sudo yum install cairo-devel

Setting up Install Process
client-rhn | 3.7 kB 00:00
Package cairo-devel-1.8.8-6.el6_6x86_64 already installed and latest version
Nothing to do

請注意,未挑選最新版本。在這種情況下,移至較新的 Linux 核心版本可能會有幫助。

某些線上資源指出藉由將下列行新增至 eclipse.ini 檔案的 -vmargs 後面,即可解決這個問題:
-Dorg.eclipse.swt.internal.gtk.cairoGraphics-false
但是,這個暫行解決方法不一致,且似乎無法與 RHEL 6.8 搭配使用。