jar - Java Archive (JAR) ファイルの作成ツール

構文

jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
オプション:
   -c アーカイブを新規作成する
   -t アーカイブの内容を一覧表示する
   -x 指定の(またはすべての)ファイルをアーカイブから抽出する
   -u 既存アーカイブを更新する
   -v 標準出力に詳細な出力を生成する
   -f アーカイブ・ファイル名を指定する
   -m 指定のマニフェスト・ファイルからマニフェスト情報を取り込む
   -e 実行可能jarファイルにバンドルされたスタンドアロン・アプリケーションの
      エントリ・ポイントを指定する
   -0 格納のみ。ZIP圧縮を使用しない
   -M エントリのマニフェスト・ファイルを作成しない
   -i 指定のjarファイルの索引情報を生成する
   -C 指定のディレクトリに変更し、以下のファイルを取り込む

ファイルがディレクトリの場合は再帰的に処理されます。
マニフェスト・ファイル名、アーカイブ・ファイル名およびエントリ・ポイント名は、
フラグ'm'、'f'、'e'の指定と同じ順番で指定する必要があります。

利用例

2つのクラス ファイルFoo.classとBar.classを、アーカイブclasses.jarに保存する。

jar cvf classes.jar Foo.class Bar.class

既存のマニフェスト・ファイルmymanifestを使用し、foo/ディレクトリのすべてのファイルを、アーカイブclasses.jarに保存する。

jar cvfm classes.jar mymanifest -C foo/

カレントディレクトリのすべてのファイルを、アーカイブa.zipに保存する。

jar cfM a.zip *

トラブル対処法

ファイル名の文字化け

格納するファイルに日本語などの文字が含まれていると、アーカイブ後にそのファイル名が文字化けして表示されることがあります。よって日本語を含めないようにするか、展開時にエンコーディングを指定するようにします。java - How to Force a jar to uses(or the jvm runs in) utf-8 instead of the system's default encoding - Stack Overflow

Javaのドキュメントから検索