MavenリポジトリにないローカルjarをPom.xmlに書く方法
MavenセントラリポジトリにないローカルjarファイルをPom.xmlに書く方法のです。
以前、「Mavenプロジェクトにローカルjarファイルを追加する方法」で紹介した system スコープを使った方法では、mvn install するとWARNINGが発生して jar ファイルが含まれないということがわかりました。
具体的には、「Spring BootでORACLEデータベースに接続する方法」で紹介した ojdbc7.jar が mvn install で war ファイルに含まれないといった事象がおこりました。そのため war ファイルを Tomcat にデプロイしたら Web アプリが起動しないということになりました。
今回は warファイルにローカルjarを含める方法 をまとめておきます。
Sponsored Links
Pom.xmlの編集
ライブラリを指定します。この時、scope と systemPath は指定しません。
version は 12.1.0 と ORACLE の利用バージョンを適用していますが、なんでもいいです。
<dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc7</artifactId> <version>12.1.0</version> </dependency>
次に、maven-install-plugin を設定します。
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-install-plugin</artifactId> <executions> <execution> <id>install-external</id> <phase>clean</phase> <configuration> <file>${basedir}/lib/ojdbc7.jar</file> <repositoryLayout>default</repositoryLayout> <groupId>com.oracle</groupId> <artifactId>ojdbc7</artifactId> <version>12.1.0</version> <packaging>jar</packaging> <generatePom>true</generatePom> </configuration> <goals> <goal>install-file</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
mvn clean もしくは、Eclipse の[実行(Run As)]-[Maven Clean]を実行すれば、maven-install-plugin が動作します。Eclipseを使ってるので、ローカルリポジトリに ojdbc7.jar 関連のリポジトリが出来上がりました。
コマンドの場合は、下記で OK かと。
mvn install:install-file -Dfile=ojdbc7.jar -DgroupId=com.oracle -DartifactId=ojdbc7 -Dversion=12.1.0 -Dpackaging=jar
- -Dfile: Jarファイルへのパス
- -DgroupId: グループID
- -DartifactId: アーティファクトID
- -Dversion: バージョン
- -Dpackaging: jar
mvn install もしくは、Eclipse の[実行(Run As)]-[Maven Install]を実行して war ファイルを確認しましょう。
おおお、ちゃんと入っていますね^^
Sponsored Links
参考サイト
まとめ
出来上がった war ファイルを Tomcat にデプロイして動作確認したところ、正しく動作しました。ふう、一件落着ですね^^
おつかれさまでした。
Sponsored Links