Wenn ich es richtig verstanden habe, hast du die Jar-Datei direkt gestartet. Das kann leider nicht funktionieren. Du musst zuerst eine Desktop-Datei von Hand anlegen. Hier mal eine Beispieldatei namens "mediathekview.desktop" für das Programm "MediathekView":
[Desktop Entry]
Type=Application
Version=1.0
Name=MediathekView
Comment=
Icon=/opt/MediathekView/MediathekView.png
Exec=/opt/MediathekView/Starten_Linux.sh
Terminal=false
StartupWMClass=mediathek-Main
Categories=GTK;GNOME;AudioVideo;Player;Video;
Diese Datei muss dann nur noch nach ~/.local/share/applications kopiert werden.
Einen wichtigen Hinweis gibt es noch:
Ohne den passenden Parameter für den Eintrag "StartupWMClass" benutzen unter Linux die Fenstermanager immer nur das generische Java-Icon (Das kleine dreieckige Männchen). Man muss dem Starter mit Hilfe des Parameters mitteilen wie das Fenster des Java-Programms heißt. Dadurch wird dann auch das richtige Icon benutzt. Herausfinden lässt sich das folgendermaßen:
Du musst das Java-Programm einmal von Hand starten. Danach rufst du in einer Konsole den folgenden Befehl auf und klickst dann auf das Programmfenster (Mauszeiger verwandelt sich nach dem Start des Programms in ein Kreuz):
xprop | grep "WM_CLASS"
Im Fall von MediaThekView bekommst du dann z.B. folgende Ausgabe:
WM_CLASS(STRING) = "sun-awt-X11-XFramePeer", "mediathek-Main"
Den zweiten Parameter trägst du dann hinter dem Eintrag "StartupWMClass" ein und speicherst die Datei dann ab. Danach sollte sich das Java-Programm mit dem richtigen Icon in der Starterleiste eintragen und auch das festpinnen sollte funktionieren.
Bei normalen Programmen ist dieser Weg normalerweise nicht mehr notwendig, bei Java-Programmen und allen anderen Programmen, welche eine Laufzeitumgebung benutzen aber schon.