楽落人の備忘録

楽して生きていきたい。知識とか覚えておきたくない。

pom.xmlにローカルに存在するjarを取り込ませる

springbootでDB接続のためにojdbc8.jarが必要になり、以下のサイトを参考にダウンロードしたjarをmavenでビルド時に利用するように指定をしていた。

 

参考サイト:

https://intellectual-curiosity.tokyo/2019/04/30/spring-boot%E3%81%A7oracle-%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AB%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/

 

上記でも動作には問題がなく、正常にDB接続も行うことができるが、

maven clean

maven install

を実行した際に以下のような警告がコンソールに発生する。

 警告内容:

[WARNING] 'dependencies.dependency.systemPath' for com.oracle:ojdbc8:jar should not point at files within the project directory, ${basedir}/lib/ojdbc8.jar will be unresolvable by dependent projects 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.

 

どうもパスの指定している箇所が悪さをしているようには見えるが原因がよくわからない。

以下に同様のエラーに遭遇し対応しているサイトを発見。

 

参考サイト:

https://www.greptips.com/posts/1094/

 

 どうやら非推奨のスコープとされているsystemを利用していることが警告の原因の用だった。

sysytemを利用せず、サイトを参考にpulugin側にパスを記載。
以下は詳細未調査のため、推測だがplugin側に記載することで、ローカルのパスを参照してのライブラリ取り込みをできるようにした模様。(今度ちゃんと調べよう。