ハマログ

株式会社イーツー・インフォの社員ブログ

GitHub Actions + Maven + Javaで、独自のライブラリを利用する

GitHub ActionsでビルドしているJavaで、Mavenのセントラルリポジトリで公開されていないjarファイルを利用する機会がありました。
ローカルで開発しているときはpom.xmlにsystemPathを書いていたのですが、GitHub Actions側でのビルド時にライブラリを参照できませんでした。
※プロジェクト直下のlibフォルダにocijdbc11.jarを格納しておきます。
<pre>
	<scope>system</scope>
	<systemPath>${project.basedir}/lib/ocijdbc11.jar</systemPath>
</pre>
参照できなかったときのエラー
[WARNING] 'dependencies.dependency.systemPath' for com.oracle:ocijdbc11:jar should not point
at files within the project directory, 
${project.basedir}/lib/ocijdbc11.jar will be unresolvable by dependent projects
@ line 246, column 16
以下のように、mvn installでローカルリポジトリにインストールすることで、対応することができました。
- name: Install ocijdbc11.jar
  run: mvn install:install-file -Dfile=lib/ocijdbc11.jar -DgroupId=com.oracle -DartifactId=ocijdbc11 -Dversion=11.2.0.4 -Dpackaging=jar
								
pom.xmlにはsystemPathではなく、パッケージ名&ライブラリ名を記入します。
<dependency>
	<groupId>com.oracle</groupId>
	<artifactId>ocijdbc11</artifactId>
	<version>11.2.0.1.0</version>
</dependency>
ビルド成功しました!

  kaneko tomo   2020年3月28日


関連記事

LaravelプロジェクトとJenkinsの連携

一年前くらいに自社サーバにJenkinsをいれた(yumしただけ)んだけど、放置…

xampp+netbeansでデバッグ設定時にエラーphp5ts.dll見つかりません

この度、XAMPP1.8.3を利用してWindowsパソコンにNetBeans …

Glassfish を Eclipse にserver登録して ClassNotFoundException が起こる

Glassfish を Eclipse にserver登録しました そのあと G…


← 前の投稿

次の投稿 →