Eu não posso falar por todas as plataformas * nix, mas na maioria dos Linuxes e BSDs, cron
tem a programação especial (não-posix) @reboot
.
# crontab -e
<editor>
@reboot /path/to/java-wrapper-that-runs-the-jar
Se você não se incomoda em colocar sua linha de comando java em um shell script de uma linha, você pode tentar
@reboot /path/to/java -jar /path/to/jar
mas isso pode não ter um ambiente como o JAVA_HOME, etc.
A abordagem cron é provavelmente mais portável do que usar /etc/rc.local
, que eu acredito ser um Linuxismo (embora possa estar errado).