「jarファイルの作り方」の版間の差分

提供: Java入門
移動: 案内検索
(ページの作成:「jarとは、Java ARchive(Javaアーカイブ)の略で、Javaのファイル群を1つのファイルにまとめたものです。 '''読み方''' ;jar:じゃ...」)
 
(相違点なし)

2015年4月4日 (土) 15:21時点における最新版

jarとは、Java ARchive(Javaアーカイブ)の略で、Javaのファイル群を1つのファイルにまとめたものです。

読み方

jar
じゃー

概要

jarファイルは、jarコマンドで作成します。Unixのtarコマンドに似ています。 MATA-INFディレクトリにMANIFEST.MFが必要です。MANIFEST.MFには、メインクラスを指定します。 jarファイルの実行は、java -jar ファイル名.jar で実行できます。

圧縮フォーマット

ZIP圧縮形式です。

拡張子

.jar

ソースコード

hello.java

/*
 * hello.java
 * Copyright (C) 2015 kaoru <kaoru@localhost>
 */
public class hello
{
        public static void main(String[] args) {
                System.out.println("hello");
        }
}

manifest.txt

Main-Class: hello

コンパイル

クラスファイルの作成

$ javac hello.java

jarファイルの作成

第2引数にMANIFEST.MFのファイルを指定します。

$ jar cvfm hello.jar manifest.txt hello.class
マニフェストが追加されました
hello.classを追加中です(入=401)(出=274)(31%収縮されました)

jarファイルのコンテンツの確認

$ jar tf hello.jar
META-INF/
META-INF/MANIFEST.MF
hello.class

実行例

$ java -jar hello.jar
hello

失敗例

jarにメイン・マニフェスト属性がありません

MANIFEST.MFが存在しない場合は、下記のエラーになります。

$ java -jar hello.jar
hello.jarにメイン・マニフェスト属性がありません

エラー: メイン・クラスHelloが見つからなかったかロードできませんでした

MANIFEST.MF の Main-Class の指定が間違っている場合、実行できません。

$ java -jar hello.jar
エラー: メイン・クラスHelloが見つからなかったかロードできませんでした

関連項目