SAP GUI for Java Muncul Dua Ikon di Ubuntu? Ini Fix-nya
Iwan Efendi2 min
Pertama kali saya lihat ini, langsung bingung. SAP GUI for Java sudah saya pin di dock GNOME, tapi setiap kali program dibuka, muncul ikon kedua tepat di sampingnya — seolah ada dua aplikasi berbeda yang jalan bersamaan. Ditutup, ikon ekstra itu hilang. Dibuka lagi, muncul lagi.
Saya sempat curiga file
Ini masalah klasik Java app di GNOME. Setiap kali sebuah aplikasi dibuka, GNOME mencoba mencocokkan window yang muncul dengan launcher-nya — supaya keduanya bisa digabung di dock. Proses ini mengandalkan properti bernama WM_CLASS, semacam pengenal window yang di-set oleh aplikasi saat pertama kali jalan.
Kebanyakan aplikasi modern sudah set ini dengan benar. SAP GUI for Java tidak. Jadilah GNOME melihat window asing yang tidak dikenali, menganggapnya aplikasi baru, lalu — dengan niat baik tapi hasilnya menyebalkan — membuat ikon baru di dock.
Solusinya: beritahu GNOME secara eksplisit bahwa WM_CLASS ini milik launcher SAP, lewat properti
Kursor akan berubah jadi crosshair — klik langsung ke window SAP GUI yang sedang aktif. Output-nya akan seperti ini:Catat nilai itu, khususnya string kedua: Di kasus saya, file-nya ada di:Kalau muncul lebih dari satu hasil, prioritaskan yang ada di Di dalam section Hasil akhir file-nya kira-kira jadi seperti ini:Simpan dengan Ctrl+O → Enter, lalu keluar dengan Ctrl+X.
Lalu logout dan login kembali — ini penting. Sekedar reload kadang tidak cukup; GNOME perlu restart sesi penuh untuk benar-benar membaca ulang file
Java app dikompilasi untuk berjalan di atas JVM, dan JVM tidak secara otomatis meneruskan nama aplikasi sebagai window class ke display server. Di situlah akar masalahnya. Window muncul dengan WM_CLASS yang generik atau tidak cocok, dan GNOME tidak punya cara untuk menghubungkannya kembali ke launcher.
Ini bukan bug khusus SAP — DBeaver, IntelliJ IDEA, dan Java desktop app lainnya bisa kena masalah yang sama persis. Begitu kamu tahu triknya, fix ini bisa langsung dipakai untuk app mana pun yang berkelakuan serupa.
Kalau kamu sudah terlalu lama menatap ikon dobel itu sambil garuk-garuk kepala — semoga ini menghemat waktu yang saya buang waktu itu. Tinggalkan komentar kalau WM_CLASS yang kamu dapat berbeda, atau kalau file
.desktop-nya corrupt, atau jangan-jangan tidak sengaja install dua kali. Ternyata solusinya cuma satu baris.
Kenapa GNOME Bikin Ikon Kedua?
StartupWMClass di dalam file .desktop.
Berlaku juga di distro lain
Saya ketemu masalah ini di Ubuntu, tapi fix yang sama juga berlaku di semua distro berbasis GNOME — Fedora, Pop!_OS, Zorin, dan sejenisnya. Kalau kamu pakai Manjaro atau Arch, proses install SAP GUI-nya memang sedikit berbeda, tapi cara fix
.desktop-nya sama persis.Cara Fix: Tambahkan StartupWMClass
1
Cek WM_CLASS dari Window SAP
Buka SAP GUI dulu sampai jalan, lalu buka terminal dan jalankan perintah ini:xprop WM_CLASSWM_CLASS(STRING) = "SAP GUI for Java", "SAP GUI for Java"
SAP GUI for Java. Ini yang akan kita pakai.2
Temukan File .desktop SAP
Jalankan perintah ini untuk cari lokasi file launcher-nya:find /usr/share/applications ~/.local/share/applications -name "*sap*" -o -name "*SAP*" 2>/dev/null/home/snipgeek/.local/share/applications/SAPGUI7.80.desktop
~/.local/share/applications/ — itu yang di-install SAP secara default untuk user.3
Edit File .desktop-nya
Buka dengan nano atau text editor apapun:nano ~/.local/share/applications/SAPGUI7.80.desktop[Desktop Entry], tambahkan baris ini:StartupWMClass=SAP GUI for Java[Desktop Entry]
Exec="/home/snipgeek/SAPClients/SAPGUI7.80/bin/guilogon"
Type=Application
Icon=guilogon2
Name=SAP GUI 7.80
Categories=X-SAPClients;Office;
StartupWMClass=SAP GUI for JavaZoom
Menjalankan xprop dan mengedit langsung file .desktop lewat terminal.
4
Refresh dan Test
Paksa desktop database baca ulang perubahan yang baru dibuat:update-desktop-database ~/.local/share/applications.desktop.Buka SAP GUI lagi. Ikon yang sudah di-pin seharusnya langsung jadi ikon aktif — tidak ada duplikat, tidak ada ikon baru yang muncul sendiri. ✅Kenapa Ini Sering Terjadi di Java App?
Bisa dipakai untuk Java app lain juga
Kalau kamu pakai DBeaver, IntelliJ, atau app Java lain yang punya masalah ikon dobel, cari file
.desktop-nya dan tambahkan properti StartupWMClass yang sama. Jalankan xprop WM_CLASS saat app itu aktif untuk dapat nilai yang tepat.Kalau kamu sudah terlalu lama menatap ikon dobel itu sambil garuk-garuk kepala — semoga ini menghemat waktu yang saya buang waktu itu. Tinggalkan komentar kalau WM_CLASS yang kamu dapat berbeda, atau kalau file
.desktop-nya berada di lokasi yang tidak biasa.Topics
Topik dalam artikel
Pilih topik untuk menemukan artikel lain dengan bahasan yang serupa.
Bagikan artikel ini
Diskusi
Menyiapkan area komentar...


