Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Beginning Java With CLI: A Practical Introduction

Beginning Java With CLI は、 Java 言語でコマンドラインツールを作りながら、実践的な Java について学ぶチュートリアルです。Mac を前提にしています。

目次 [TOC]

1. Java環境をセットアップ

1.1. セットアップ(システム環境)

  1. Brewをインストール

    1. 管理者権限があるユーザーとしてログイン
    2. brew をインストール
      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  2. Javaをインストール

    1. 管理者権限があるユーザーとしてログイン
    2. openjdkをインストール
    brew install openjdk

1.2. セットアップ(ユーザー環境)

  1. 環境変数PATHにBrewを追加する

    1. 普段利用するユーザーとしてログイン

    2. 起動スクリプトに環境変数の宣言を追加する

      echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
  2. 環境変数JAVA_HOMEにjavaのフォルダを追加

    1. 普段利用するユーザーとしてログイン
    2. 環境変数 JAVA_HOME を確認
      echo $JAVA_HOME
    3. Javaのフォルダが環境変数の中になければ、起動スクリプトに環境変数の宣言を追加する
      echo 'export JAVA_HOME="/opt/homebrew/opt/openjdk"' >> ~/.zshrc
  3. 環境変数PATHにjavaコマンドが存在するフォルダを追加

    1. 普段利用するユーザーとしてログイン
    2. 環境変数 JAVA_HOME を確認
      echo $PATH | grep openjdk
    3. Java のパスがなければ、起動スクリプトに環境変数の宣言を追加する
      echo 'export PATH="$JAVA_HOME/bin:$PATH"' >> ~/.zshrc
  4. 動作確認

    1. 普段利用するユーザーとしてログイン
    2. Javaのバージョンを表示
      java --version
      結果
      openjdk 25.0.1 2025-10-21
      OpenJDK Runtime Environment Homebrew (build 25.0.1)
      OpenJDK 64-Bit Server VM Homebrew (build 25.0.1, mixed mode, sharing)
      
    3. Javac のバージョンを表示
      javac --version
      結果
      javac 25.0.1
      

2. Hello Java コマンドを作成

2.1. フォルダ階層の作成からコンパイルまで

  1. フォルダ階層を作る

    以下のコマンドを実行しフォルダ階層とJavaファイルを作る

    mkdir -p c02_hello_java/bin
    mkdir -p c02_hello_java/src/mypkg
    touch c02_hello_java/src/mypkg/HelloJava.java

    以下のような階層ができる

    c02_hello_java
    ├── bin
    └── src
        └── mypkg
            └── HelloJava.java
    
  2. Javaコードを書く

    src/mypkg/HelloJava.javaを編集する

    package mypkg;
    
    public class HelloJava {
    	public static void main(String[] args) {
    		System.out.println("Hello Java");
    	}
    }
  3. コンパイルする クラスファイルの出力先として、binフォルダを指定する。

    cd c02_hello_java
    javac src/**/*.java -d bin 

    以下のような階層ができる

    ├── bin
    │   └── mypkg
    │       └── HelloJava.class
    └── src
        └── mypkg
            └── HelloJava.java

2.2. Java アプリを実行する

4通りの方法で実行してみる

  1. 1行で実行する

    java -classpath bin mypkg.HelloJava

    結果

    Hello world
    
  2. クラスパスを環境変数に指定して実行する

    export CLASSPATH=bin
    java mypkg.HelloJava
  3. シェルスクリプトから実行する

    1. シェルスクリプトフォルダshを作る

      mkdir sh
      touch sh/hellojava
    2. テキストエディタで sh/hellojava を編集する

      #!/usr/bin/env bash
      
      # このシェルスクリプトが存在しているフォルダの絶対パス
      THIS_DIR="$(cd $(dirname $0);pwd)" 
      
      # 一つ上を経由したbinフォルダのパスをクラスパスに追加
      export CLASSPATH="${THIS_DIR}/../bin" 
      
      # このシェルスクリプトの入力引数をJavaアプリに渡す
      java mypkg.HelloJava "$@"
    3. 実行可能ファイルにする

      chmod +x sh/hellojava
    4. 実行する

      ./sh/hellojava

      結果

      Hello world
      
  4. メインクラス指定無しのjarファイルを作成して実行

    1. Jarをビルドする

      jar --create --file hello_jar.jar -C bin . 
    2. 実行する jarファイルをクラスパスに追加して、javaコマンドから実行できる

      java -cp hello_jar.jar mypkg.HelloJava

      結果

      Hello world
      
  5. メインクラスを指定するjarファイルを作成して実行

    1. Jarをビルドする

      jar --create --file hello_jar.jar --main-class mypkg.HelloJava  -C bin . 
    2. 実行する -jar FILEオプションを指定し、javaコマンドからメインクラスを実行できる

      java -jar hello_jar.jar

      結果

      Hello world
      

About

Beginning Java with CLI: A Practical Introduction

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages