以下問題已毋需處理,感謝各位幫忙。
我的環境是 ubuntu 18.04 純文字介面,我有一隻 java 程式本來都很正常,
前些天,不小心安裝了 gtk , 以致現在執行時會出現下列錯誤。
我要如何移除它呢?(我忘了當初是下了什麼指令,似乎是 atp install gtk??? , 詳細忘了。)
.... -Dsun.security.ssl.allowUnsafeRenegotiation=true -Djavax.net.ssl.trustStore=/home/marco/gcp_dev/Turnkey2/test/./ca/tnkcacerts -Djavax.net.ssl.trustStorePassword=changeit -Dmode=local -Duser.language=zh -Duser.region=TW -Dfile.encoding=utf-8 com.tradevan.gateway.client.view.EINVTurnkey
Exception in thread "main" org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]
at org.eclipse.swt.SWT.error(Unknown Source)
at org.eclipse.swt.widgets.Display.createDisplay(Unknown Source)
at org.eclipse.swt.widgets.Display.create(Unknown Source)
at org.eclipse.swt.graphics.Device.<init>(Unknown Source)
at org.eclipse.swt.widgets.Display.<init>(Unknown Source)
at org.eclipse.swt.widgets.Display.<init>(Unknown Source)
at com.tradevan.gateway.client.view.EINVTurnkey.main(EINVTurnkey.java:26)
嘗試
https://ubuntunotpronote.blogspot.com/2019/10/blog-post.html
sudo apt-get purge gtk*
sudo apt-get autoremove
sudo apt-get clean
十分感謝您的幫忙,
我下了 sudo apt-get purge gtk*
出現如下訊息
The following packages were automatically installed and are no longer required:
libgtk2.0-common openjdk-8-jdk-headless
Use 'sudo apt autoremove' to remove them.
下列的額外套件將被安裝:
adwaita-icon-theme-full gcc-8-base:i386 gtk-update-icon-cache:i386 libblkid1:i386 libbsd0:i386 libc6:i386 libffi6:i386 libgcc1:i386 libgdk-pixbuf2.0-0:i386
libglib2.0-0:i386 libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386 liblzma5:i386 libmount1:i386 libpcre3:i386 libpng16-16:i386 libselinux1:i386
libtiff5:i386 libuuid1:i386 libx11-6:i386 libxau6:i386 libxcb1:i386 libxdmcp6:i386 zlib1g:i386
建議套件:
glibc-doc:i386 locales:i386
下列套件將會被【移除】:
gtk-update-icon-cache* libcanberra-gtk-module* libcanberra-gtk0* libgtk-3-bin* libgtk2.0-0* openjdk-8-jdk* openjdk-8-jre*
下列【新】套件將會被安裝:
adwaita-icon-theme-full gcc-8-base:i386 gtk-update-icon-cache:i386 libblkid1:i386 libbsd0:i386 libc6:i386 libffi6:i386 libgcc1:i386 libgdk-pixbuf2.0-0:i386
libglib2.0-0:i386 libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386 liblzma5:i386 libmount1:i386 libpcre3:i386 libpng16-16:i386 libselinux1:i386
libtiff5:i386 libuuid1:i386 libx11-6:i386 libxau6:i386 libxcb1:i386 libxdmcp6:i386 zlib1g:i386
升級 0 個,新安裝 25 個,移除 7 個,有 0 個未被升級。
需要下載 14.0 MB 的套件檔。
此操作完成之後,會多佔用 36.7 MB 的磁碟空間。
是否繼續進行 [Y/n]? [Y/n]
怎麼連 openjdk-8-jdk* openjdk-8-jre* 也會移除?
執行後,我的 java 還能跑嗎?(不敢按下去)
參考 cshalove 大大的話
可以去 /var/log/apt/history.log 看安裝記錄檔
或從指令的歷史記錄查
cat ~/.bash_history
得知到底是安裝了什麼,再下apt-get purge
會比較保險
感恩。
查了 /var/log/apt/history.log ,查到了2條指令
apt-get install libcanberra-gtk3-module
apt-get install libcanberra-gtk-module
所以,我就下了移除指令
apt-get purge libcanberra-gtk3-module
apt-get purge libcanberra-gtk-module
apt-get autoremove
apt-get autoclean
但,執行我的 java 時,出現的錯誤訊息還是一模一樣。
No more handles [gtk_init_check() failed] while running eclipse on ubuntu
看文章中的回答是gtk版本問題,gtk應該是要有的,但版本不對,我沒遇過這個,只能幫到這了~
還是十分感恩,
因為我本就是純文字系統,完全不需要任何桌面相關,只因為不小心安裝了 gtk , 天下大亂,現在,連要移除都很困難。