Mavenプロジェクトにローカルjarファイルを追加する方法
Mavenプロジェクトにローカルjarファイルを追加する方法です。
自前で用意したローカルのライブラリや、Maven リポジトリから提供されていないサードパーティ Jar など、 pom.xml 上に指定できない場合どのようにすればよいか悩みますよね。「Group ID」や「Artifact ID」など、一体何を入力したらいいのやら・・・。
groupIdにはプロジェクトのルートパッケージ名、artifactIdにはプロジェクト名を指定するのが一般的です。artifactIdは作成するJAR,WAR,EARファイルなどの名前にも使用されます。仮に「サンプル」というプロジェクトがあった場合「groupId=sample.com」「artifactId=sample」となります。
ここでは Eclipse の Maven プラグインを使った設定方法 を紹介します。
とにかく ローカルjarファイルをMavenから参照させたい という方のお役にたてればうれしいですね。
pom.xmlにローカルjarを追加する
仮に saka-en.jar というファイルがあったとします。jar ファイルを指定の場所にコピーします。場所はどこでもいいです。
次に pom.xml に dependencies に下記のように追記します。
<dependency>
<groupId>com.saka-en</groupId>
<artifactId>saka-en</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/lib/saka-en.jar</systemPath>
</dependency>
ポイントは scope に"system"を設定して、systemPath にてローカル jar ファイルのパスを指定することです。
保存すれば Maven 依存関係に追加されます。
プロジェクトのプロパティから「java のビルド・パス」-「ライブラリ」-「Maven 依存関係」で該当 jar が追加されていることを確認します。
ローカルリポジトリにも登録されました。
まとめ
Mavenプロジェクトにローカルjarファイルを追加する方法を紹介しました。
どうですか、うまくできましたか?
プロジェクト内にライブラリ管理が依存されることになりますが、バージョン管理システムを使ってライブラリを含めてしまえば、複数人で開発する時にも役立ちます。社内にリポジトリサーバーを立てるなどの方法もあるみたいですね。私は構築方法を知らないので Google 先生に聞いてみてください^^;
プロジェクトの規模や環境によってうまく使い分けしたいところですね。
追記
ここで紹介する方法ではwarファイル作成時に、ローカルjarが含まれない事がわかりました。こちらの「MavenリポジトリにないローカルjarをPom.xmlに書く方法」も参考にしてみてください。
おつかれさまでした。