状況
Mavenセントラルリポジトリや、インハウスリポジトリにはないjarを渡されて、
「このjarを使って、warを固めてくれ!」
と命じられた場合の対処法。
対処法
-
mvn install:install-file
コマンドを実行して、ローカルリポジトリ(Windowsの場合、たいていはC:\Users\ユーザー\.m2\repository
)に登録する。 - pom.xmlにて、1で登録したjarを参照するように設定を行う。
具体的には、
- ローカルリポジトリに登録したいjarが
C:\lib\sample.jar
- groupIdが
jp.co.nannany
- artifactIdが
sample
- versionが
2.5.0
である場合には、以下のようなコマンドをたたく。
mvn install:install-file -Dfile=/lib/sample1.jar -DgroupId=jp.co.nannany -DartifactId=sample -Dversion=2.5.0 -Dpackaging=jar
また、ローカルリポジトリに登録したファイルを参照するようにpom.xmlの設定を修正する。
<dependency>
<groupId>jp.co.nannany</groupId>
<artifactId>sample</artifactId>
<version>2.5.0</version>
</dependency>
これらを行った後で固めたwarファイルには、該当のjarに依存するようになっている。