Java Service Wrapper は、Windows/Unix/OSX 向けの方法です。数年問題なく使用しています。これは優れたソフトウェアであり、JVM のクラッシュ/ハングを適切に処理し、何か問題が発生した場合にサービスを自動的に再起動します。
アプリケーションの配布に関しては、 Windows 上のNSISをお勧めします。必要な場所にファイルを置き、JSW スタブを実行してターゲット システムにサービスをインストールする適切なインストーラを作成できます。Unix の場合は、tar.gz にパッケージ化してサービスのインストール方法を説明するだけです (sh スクリプトを /etc/init.d にコピーし、chkconfig または起動スクリプトを管理するその他のシステム依存ツールを使用してインストールします)。Mac では、dmg にパッケージ化する必要があります。
よりクロスプラットフォームなソリューションが必要な場合は、izpackを試すこともできます。izpack は、ネイティブの Windows アプリケーションまたは Mac アプリケーションとして Java Web Start から実行できます。ユーティリティ ページを確認してください。
IzPack は、アプリケーションのパッケージ化、配布、および展開のためのワンストップ ソリューションです。これは完全にクロスプラットフォームであり、単一のインストーラーを生成します。そのため、プラットフォーム固有のインストーラーやパッケージ マネージャーなどのネイティブ ソリューションに代わるものです。IzPack で生成されたインストーラーを実行するには、Java 仮想マシンのみが必要です。