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 2月 23 11:48 /usr/bin/javac -> /etc/alternatives/javac
「/usr/bin/javac」から「/etc/alternatives/javac」へシンボリックリンクが張られています。さらにリンク先ファイルの情報を調べます。
$ ll /etc/alternatives/javac
lrwxrwxrwx. 1 root root 63 2月 23 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 は、特に外部ライブラリに依存したプロジェクトの開発で威力を発揮します。
この記事が気に入ったらサポートをしてみませんか?