Para o Linux, existe uma maneira: empacotar o jar em um arquivo bash. Etapas:
1- Crie um esboço:
MYSELF='which "$0" 2>/dev/null'
[ $? -gt 0 -a -f "$0" ] && MYSELF="./$0"
exec java -jar $MYSELF "$@"
exit $?
2- Concatene o stub e o jar em um novo executável:
cat stub.sh Main.jar > main.sh
3- Torne o novo arquivo executável:
chmod +x main.sh
É isso! Fonte: link