mavenを使ってみた 2
maven (ビルドツール)でプログラムをビルド・実行する備忘録 その2 です。今回は 簡単なビルドエラーが発生したシチュエーションです。
前提
AlmaLinux release 8.9
OpenJDK 11.0.22
Apache Maven 3.9.6
wanko のホームディレクトリ(/home/wanko)で作業します。
ビルド
今回はグラフィカルなグラフを作図する為の jfreeライブラリ を利用した作者自身による公開デモを見つけたので紹介します。URL https://github.com/jfree/jfree-demos
上記の「Code」→「Download ZIP」から jfree-demos-master.zip(891,941バイト commit 182987da8db9531ceb44af591835a6124fb303b9)をダウンロードして展開します。
$ unzip jfree-demos-master.zip
展開した「jfree-demos-master」フォルダに移動し
$ cd ~/jfree-demos-master
次の maven コマンドでビルドします。
$ mvn package
pom.xml
依存ライブラリ ダウンロードが始まり、javaプログラムがコンパイルされますが、今回は次のようなエラーとなります。
依存ライブラリ「org.jfree.chart3d:jar:2.1-SNAPSHOT」を見つけられないようです。github の Issues でも指摘(2022-09-29)されていますが放置されています、作者も忙しいのでしょう。Mavenリポジトリサイト URL https://central.sonatype.com/
で「org.jfree.chart3d」を検索すると「pom.xml」の最新の書き方が見つかります(pom.xml:Maven での構成情報 Project Object Model)。「2.1-SNAPSHOT」がなくなり「2.1.0」が最新のようです。エディタで
$ vi ~/jfree-demos-master/pom.xml
次のように修正します。
54c54
< <version>2.1-SNAPSHOT</version>
---
> <version>2.1.0</version>
再び maven コマンドでビルドすると成功しました。jarファイル
~/jfree-demos-master/target/org.jfree.demos-2.1-jar-with-dependencies.jar
が生成されるので
$ java -jar ~/jfree-demos-master/target/org.jfree.demos-2.1-jar-with-dependencies.jar
で実行します。pom.xml ファイルが要であることが分かりますね。