exewrap

exewrap は実行可能 JAR ファイルから EXE ファイルを生成するツールです。 Windows 環境で Java アプリケーションをより簡単に起動できるようにします。 JETGCJ のようにネイティブコードにコンパイルするツールではありません。 JSmoothlaunch4j と同じように Java アプリケーションの起動を助けるツールです。


特徴 JSmooth や launch4j など素晴らしいラッパーがすでに存在しているにもかかわらず、 なぜ新しいラッパーを自作したのか。それは JSmooth, launch4j それぞれに、 少しだけ満足できない部分があったからです。 GUI インターフェースを備え とても使いやすい JSmooth ですが 出力される EXEファイルサイズが +380KB 以上と非常に大きいのが不満でした。 また、タスクマネージャに java.exe/javaw.exe が表示されるためプロセスを判断するのが困難です。 launch4j の出力する EXEファイルサイズは +20KB と非常に小さいのですが、 残念ながら launch4j も java.exe/javaw.exe を使用します。 launch4j では、オプション設定でプロセス名を EXEファイル名にすることができるようになっていますが、 実は、これ java.exe/javaw.exe をテンポラリに EXEファイル名で別名コピーしてから起動しているんですね。 一時ファイルを吐き出してしまうのも、なんとなく嫌だったのです。
ライセンス (exewrap は BSD ライクなライセンスを採用しています。)
Copyright (C) 2005-2008 HIRUKAWA Ryo. All rights reserved.

ソースコード形式であれバイナリ形式であれ、変更の有無に関わらず、 以下の条件を満たす限りにおいて、再配布および使用を許可します:

1. ソースコード形式で再配布する場合、上記著作権表示、 本条件書および下記責任限定規定を必ず含めてください。

2. バイナリ形式で再配布する場合、上記著作権表示、本条件書および下記責任限定規定を、 配布物とともに提供される文書 および/または 他の資料に必ず含めてください。

本ソフトウェアの実行により生成されたファイルの利用および配布について一切の制限を行いません。上記著作権表示、本条件書、下記責任限定規定を含まずに、本ソフトウェアの実行により生成されたファイルを完全に自由に利用および配布することができます。

本ソフトウェアは HIRUKAWA Ryo によって、"現状のまま" 提供されるものとします。本ソフトウェアについては、明示黙示を問わず、商用品として通常そなえるべき品質をそなえているとの保証も、特定の目的に適合するとの保証を含め、何の保証もなされません。事由のいかんを問わず、損害発生の原因いかんを問わず、且つ、責任の根拠が契約であるか厳格責任であるか (過失その他) 不法行為であるかを問わず、HIRUKAWA Ryo も寄与者も、仮にそのような損害が発生する可能性を知らされていたとしても、本ソフトウェアの使用から発生した直接損害、間接損害、偶発的な損害、 特別損害、懲罰的損害または結果損害のいずれに対しても (代替品または サービスの提供; 使用機会、データまたは利益の損失の補償;または、業務の中断に対する補償を含め) 責任をいっさい負いません。


 ダウンロード

インストール・使い方

インストールは不要です。適当な場所に exewrap.exe をコピーしてお使いください。

実行可能な JAR ファイルを引数に指定して実行すると EXE ファイルが作成できます。 たとえば、SwingSet2.jar を EXE にする場合には次のようにします。

  exewrap.exe  SwingSet2.jar
  
実行時にコンソールウィンドウを表示したくない場合は、オプション -g を付けてください。
  exewrap.exe  -g  SwingSet2.jar
  
Windows サービス(NTサービス)を作成することもできます。NTサービスを作成する場合は、オプション -s を付けてください。
  exewrap.exe  -s  test.jar
  
アイコンを指定することができます。
  exewrap.exe  -i  test.ico  test.jar
  
引数を与えずに実行すると、オプション一覧が表示されます。

exewrap には他にも多くの便利な機能があります。
より詳細な機能の説明は こちら で確認できます。


2009/04/05 HIRUKAWA Ryo

不具合報告・ご要望はこちらまで