概要
AWS EC2(AMI: Amazon Linux 2)にMavenをインストールしてmvn
コマンドが使えるようにする
環境
- AWS EC2
- OS: Amazon Linux 2
- AMI ID: amzn2-ami-hvm-2.0.20200304.0-x86_64-gp2
構築手順
1. JDK8をインストールする
- Amazon Linux 2にはデフォルトでJavaが入っていないのでインストールする
- Apache Maven 3.3以降はJDK 1.7以上が必要
$ sudo yum install -y java-1.8.0-openjdk-devel.x86_64
$ sudo alternatives --config java
$ java -version
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
2. Mavenをダウンロードする
- ダウンロード先: Downloading Apache Maven
-
Binary tar.gz archive
のLinkのURLをコピーしてwget
でダウンロード
-
$ cd /usr/local/lib/
$ sudo wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
Saving to: ‘apache-maven-3.6.3-bin.tar.gz’
2020-03-27 11:23:54 (23.6 MB/s) - ‘apache-maven-3.6.3-bin.tar.gz’ saved [9506321/9506321]
3. Mavenを展開して配置する
- ダウンロードしたファイルを解凍して
/opt/
に配置 - 展開した
apache-maven-3.6.3
にapache-maven
のシンボリックリンクを貼る
$ sudo tar -xzvf apache-maven-3.6.3-bin.tar.gz
$ sudo mv apache-maven-3.6.3 /opt/
$ cd /opt/
$ sudo ln -s /opt/apache-maven-3.6.3 apache-maven
$ ls -l
lrwxrwxrwx 1 root root 23 Mar 27 11:36 apache-maven -> /opt/apache-maven-3.6.3
drwxr-xr-x 6 root root 99 Mar 27 11:28 apache-maven-3.6.3
4. MavenへのPATHを追加する
-
.bash_profile
にMVN_HOME
を追加し、PATH
にMVN_HOME/bin
を追加する -
.bash_profile
を反映する - 全ユーザーにPATHを通したい場合は
/etc/profile
に追加する
$ cd
$ vi .bash_profile
MVN_HOME=/opt/apache-maven
PATH=$MVN_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin
$ source .bash_profile
// 全ユーザーにPATHを通したい場合
$ sudo vi /etc/profile
MVN_HOME=/opt/apache-maven
PATH=$PATH:$MVN_HOME/bin
$ source /etc/profile
5.mvnコマンドが使えることを確認する
$ mvn --version
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /opt/apache-maven
Java version: 1.8.0_242, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.amzn2.0.1.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.14.171-136.231.amzn2.x86_64", arch: "amd64", family: "unix"
感想
Maven homeをどこにすべきかちょっと迷った