見出し画像

mavenを使ってみた

 maven (ビルドツール)で構成された java プログラムをビルド・実行する備忘録です。


前提

AlmaLinux release 8.9

OpenJDK 11.0.22

Apache Maven 3.9.6

 wanko のホームディレクトリ(/home/wanko)で作業します。

インストール

java

 javac(コンパイラなど)、java(実行用)のインストールは下記で紹介しました。

maven

 https://maven.apache.org/download.cgi から現時点の最新ファイル「apache-maven-3.9.6-bin.tar.gz」(URL https://dlcdn.apache.org/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz )をダウンロードします。

 「apache-maven-3.9.6-bin.tar.gz」を展開します。

$ tar zxvf apache-maven-3.9.6-bin.tar.gz

 ホームディレクトリに「apache-maven-3.9.6」フォルダが展開されます。

/home/wanko/apache-maven-3.9.6

 javaコンパイルコマンド「javac」で呼び出されるパスを調べます。

$ which javac

/usr/bin/javac

 ファイルの情報を調べると

$ ll /usr/bin/javac

lrwxrwxrwx. 1 root root 23  223 11:48 /usr/bin/javac -> /etc/alternatives/javac

「/usr/bin/javac」から「/etc/alternatives/javac」へシンボリックリンクが張られています。さらにリンク先ファイルの情報を調べます。

$ ll /etc/alternatives/javac

lrwxrwxrwx. 1 root root 63  223 11:48 /etc/alternatives/javac -> /usr/lib/jvm/java-11-openjdk-11.0.22.0.7-2.el8.x86_64/bin/javac

 「/usr/lib/jvm/java-11-openjdk-11.0.22.0.7-2.el8.x86_64/bin/javac」が「javac」の実体です。異なるバージョンを共存出来るようにインストールされています。
 wanko がログインしたら環境変数「JAVA_HOME」「M2_HOME」「M2」「PATH」が設定されるように vi などのテキストエディタで「~/.bash_profile」を編集します。

$ vi ~/.bash_profile

 次のように

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.22.0.7-2.el8.x86_64
export M2_HOME=~/apache-maven-3.9.6
export M2=$M2_HOME/bin
export PATH=$M2:$PATH

末尾の4行を追加します。「JAVA_HOME」は事前に調べた「/usr/lib/jvm/jre-1.8.0-openjdk.x86_64」までのパスです。ログアウト「exit」して再ログインします。次のコマンドで

$ mvn --version

Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
Maven home: /home/wanko/apache-maven-3.9.6
Java version: 11.0.22, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-11-openjdk-11.0.22.0.7-2.el8.x86_64
Default locale: ja_JP, platform encoding: UTF-8
OS name: "linux", version: "4.18.0-513.18.1.el8_9.x86_64", arch: "amd64", family: "unix"

このような応答があれば正常です。

ビルド

 現時点でエラー無く動作するグラフィカルな公開プロジェクトを見つけたので紹介します。URL https://github.com/jkboyce/jugglinglab

 上記の「Code」→「Download ZIP」から  jugglinglab-main.zip(641815バイト commit bd06e6244c9fa36c3b810f12a49d0a20eadcac87)をダウンロードして展開します。

$ unzip jugglinglab-main.zip

 展開した「jugglinglab-main」フォルダに移動し

$ cd jugglinglab-main

次の maven コマンドでビルドします。

$ mvn package

 依存ライブラリ ダウンロードが始まり、javaプログラムがコンパイルされ、実行用 jarファイルが生成されます。

~/jugglinglab-main/bin/JugglingLab.jar

 OSでGUIがサポートされていれば、このファイルをダブルクリックするか

$ java -jar ~/jugglinglab-main/bin/JugglingLab.jar

でも実行できます。
 maven は、特に外部ライブラリに依存したプロジェクトの開発で威力を発揮します。

この記事が気に入ったらサポートをしてみませんか?