desktop文件中的 StartupWMClass 字段可能有错,会导致dock图标显示为齿轮,StartupWMClass 用于指定应用程序的窗口类名,这有助于系统正确识别应用程序窗口,避免在 Dock 或任务栏中出现多个相同应用的图标。

解决办法:

可以通过 xprop WM_CLASS 命令来获取应用的窗口类名。打开该应用,然后在终端中运行

❯ xprop WM_CLASS

此时鼠标指针会变成十字线,点击该应用的窗口界面,终端就会输出窗口类名信息。

举例:

❯ xprop WM_CLASS
WM_CLASS(STRING) = "jetbrains-studio", "jetbrains-studio"

得到 jetbrains-studio , 修改desktop文件的 StartupWMClass 字段

[Desktop Entry]
Name=AndroidStudio
Comment=Integrated Development Environment for Android Applications
Keywords=as;
Exec=/home/dean/Applications/android-studio/bin/studio.sh %f
Icon=/home/dean/Applications/android-studio/bin/studio.svg
Terminal=false
Type=Application
Categories=Development;IDE;
StartupWMClass=jetbrains-studio

Dean King

2025/3/1 夜于唐山