smartgit打开失败

smartgit是linux下优秀的git客户端软件,但是依赖于java版本,要特别注意。


问题

进入smartgit的bin目录smartgit/bin

$ ./smartgit.sh

报错: java: /build/buildd/gtk2-engines-oxygen-1.4.5/src/animations/oxygencomboboxdata.cpp:87: void Oxygen::ComboBoxData::setButton(GtkWidget*): Assertion `!_button._widget’ failed. ./smartgit.sh: line 144: 21975 Aborted (core dumped) $_JAVA_EXEC $_GC_OPTS $_MISC_OPTS $_VM_PROPERTIES -jar “$SMARTGIT_HOME/lib/bootloader.jar” “$@”


原因

使用了gtk2的主题Oxygen导致。


解决方案

编辑文件 /usr/share/themes/oxygen-gtk/gtk-2.0/gtkrc

GtkComboBox::appears-as-list = 1

改成

GtkComboBox::appears-as-list = 0

就可以成功打开了。