【Java】LinuxでJava環境を構築してJARを実行する
実行環境
動作確認を行った環境は以下になります。
vagrant@vagrant:~$ cat /etc/os-release NAME="Ubuntu" VERSION="18.04.3 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.3 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic
vagrantで作成した環境です。
Javaのインストール
以下のコマンドを実行します。
sudo apt update sudo apt install default-jre sudo apt install default-jdk
以下でインストールされていることを確認します。
vagrant@vagrant:~$ java -version openjdk version "11.0.11" 2021-04-20 OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.18.04) OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.18.04, mixed mode, sharing) vagrant@vagrant:~$ javac -version javac 11.0.11
Javaの動作確認
以下のコマンドを実行して「Hello World!!」と表示されれば成功です。
vi Hello.java javac Hello.java java Hello
public class Hello { public static void main(String[] args) { System.out.println("Hello World!!"); } }
JARの作成と実行
以下のコマンドを実行します。
mkdir -p src/jp/co/sample/lib vi src/jp/co/sample/lib/Human.java vi src/jp/co/sample/App.java vi manifest2.mf javac -sourcepath src -d classes src/jp/co/sample/App.java jar cvfm sample.jar manifest.mf -C classes . java -jar sample.jar Hoge Fuga Piyo
package jp.co.sample.lib; public class Human { private String name; public Human(String name) { this.name = name; } public void introduceMyself() { System.out.println(String.format("My name is %s.", this.name)); } }
package jp.co.sample; import jp.co.sample.lib.Human; class App { public static void main(String[] args) { for(String arg : args) { Human human = new Human(arg); human.introduceMyself(); } } }
Main-Class: jp.co.sample.App
vagrant@vagrant:~$ java -jar sample.jar Hoge Fuga Piyo My name is Hoge. My name is Fuga. My name is Piyo.