最終更新日:170602 原本 

クラスを複数定義すると、コンパイル後に定義したクラスと同じ数だけclassファイルが作成されます。

クラスが少なければ良いのですが、プログラムの規模が大きくなってくるとclassファイルがたくさんできてしまい、フォルダ内が煩雑になってしまいます。
また、プログラムで使用する画像などのリソースが増えるとファイルサイズが巨大化してしまいます。

これらを防ぐため、Javaではclassファイルや画像などの複数のファイルを、Jarファイルと呼ばれる形式にアーカイブ化し、圧縮するJavaARchiveジャバアーカイブ)というツールが提供されています。

下記にJavaARchive(Jar)の使い方を記します。

C:\java\>jar cf jarTest.jar *.class
カレントディレクトリ内(C:\java\)にある全てのclassファイルをjarTest.jarという
Jarファイルにまとめる


C:\java\>jar cf jarTest.jar *.class image
カレントディレクトリ内(C:\java\)にある全てのクラスファイルとimagesフォルダ内の全てのファイルをjarTest.jarというJarファイルにまとめる


jarの後のcfのcはアーカイブファイルを新規に作成するという意味で、指定したjarファイルが存在する時は上書きします。
fはアーカイブファイル名をユーザーが指定する場合につけるオプションです。
上記サンプルでは、「jarTest.jar」と自分で名前を付けているのでfオプションを加えています。

vをつけることで圧縮率などを表示させることもできます。