🦔

自作したjarファイルを別のプロジェクトに(内部)ライブラリとして追加し利用する方法

2024/09/06に公開

はじめに

この記事は、jarファイルの作成方法と利用方法についてまとめた内容が記載してあります。
※「jarファイルとは?」について言及する記事ではないのでご容赦ください
→ jarファイルについて知りたいという方はこちら
https://docs.oracle.com/javase/jp/7/technotes/guides/jar/jarGuide.html

この記事の対象者(推奨)

・ 自作jarファイルの作成方法を知りたいという方
・ 生成したjarファイルのインポート方法や紐付け方を知りたいという方
・ 現在javaを勉強されていて、知見を増やしたいという方

開発環境

・ macOS : Sonoma14.6.1
・ Java : 21
・ SpringBoot : 3.3.3
・ Eclipse : 2024-06

準備

・ jarファイル作成用のプロジェクトを用意する

パッケージ構成

ライブラリとして追加する対象のクラスを作成

下記はメッセージをランダムで返す機能ですが、ここは重要では無いため内容はお任せします。

package com.example.demo.service;

public class RundomMessageService {
	
	public void execute() {
		String[] messageArray = {
			"こんにちは",
			"ありがとう",
			"いただきます"
		};
		
		System.out.println(messageArray[(int)(Math.random() * 2)]);
		
	}

}

いよいよjarファイルの作成

  1. 先ほどクラスを作成したプロジェクトにカーソルを合わせて右クリック → エクスポート

  2. 「JARファイル」を選択し、次へ

  3. 「参照」を押下し、エクスポート(ダウンロード)先のパスの選択とファイル名を記載
    → 保存後に完了ボタン押下

jarファイルの追加と利用

  1. ライブラリ追加用の別プロジェクトを用意し、プロジェクト直下に 「lib」 フォルダ作成
    → 3でダウンロードしたjarファイルをlibフォルダに配置

  2. 対象プロジェクトの上で右クリック → ビルド・パス → ビルド・パスの構成を押下 

  3. モジュールではなくクラスパスを選び、右にある 「JARの追加」を押下
    → 4で配置したjarファイルを選択し、「OK」を押下後に適用して閉じる

  1. 6の手順を行ったことで、新たに 「参照ライブラリー」という依存関係のフォルダが作成され、その中にjarファイルが自動的に配置されていることを確認

  2. importが正常にできるかを確認(確認しやすいようにmainメソッド内で呼んでいます)

package com.example.demo.service;

public class CheckService {
	
	public static void main(String[] args) {
		
		RundomMessageService service = new RundomMessageService();
		service.execute();
		
	}
}

コンパイルエラーが解消されれば完了です!

最後に

jarファイルの作成自体はmavenや別のコマンドでも出来ますが、作成したjarの中身が正しいかの確認は必須です。(場合によっては、本来なくてはならないフォルダやファイルが存在しないなんてことがあったりします。) 働いている環境や現場によっては、自作jarファイルを作る機会があまりないといった方もいるかもしれませんが、いざという時のためにも興味がある方は是非自分自身の開発環境で試してみてください!最後までお読みいただきありがとうございました。

Discussion