ハマログ

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

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日


関連記事

Amazon Linux2でLocaleを変更してみた

  はじめに どうも!T-utsuです。 最近なにかとAWSをいじるこ…

AWS Systems Manager DistributorでCodeDeploy Agentをインストールする

EC2へのCodeDeploy Agentインストールの際に、AWS Syste…

Laravelでのログイン処理のかきかた

こんにちは、かねこです。 はじめに Laravelでの認証処理の実装方法について…


← 前の投稿

次の投稿 →