问题
I have written an application in Java and succesfully compiled it using gcj.
In (X)ubuntu's File Manager, my application appears with the default Linux executable icon, which I would like to replace with my own.
I have seen that other applications display a custom icon as the executable, such as Firefox, but have no idea how to approach the problem. Is there some sort of resource editor for Linux binaries?
Desktop Entry
I've tried creating a Desktop Entry file that executes the application as follows:
[Desktop Entry]
Version=1.0
Type=Application
Name=MyJavaApp
Comment=
Exec=./MyJavaApp
Path=./../../libs/
Terminal=true
Icon=./icon.png
X-KDE-Library=./../../libs/libswt.so
Double-clicking it makes a terminal pop up and disappear again, and that's it. I'm fairly sure the application doesn't launch because it can't find the required SWT library. I was hoping to see the output in the terminal, but I can't launch it from there.
Furthermore, Ubuntu doesn't seem to acknowledge Icon
. I have tried various resolution PNGs; no dice.
回答1:
Executables on Linux do not have icons embedded (try to point your file manager to /usr/bin
). What you have seen is probably a Desktop Entry. That's a text file describing the icon, program name and the executable.
回答2:
On Ubuntu:
mouse right click the icon you don't like -> Properties -> in the opened window click the icon -> choose an icon you want
来源:https://stackoverflow.com/questions/2126545/embedding-an-icon-in-a-linux-executable