Javaにおけるコマンドライン引数
Javaのコマンドライン引数は、メインプログラムに引数を渡すために使用されます。Javaのメインメソッドの構文を見ると、引数としてStringの配列を受け入れることがわかります。コマンドライン引数を渡すと、それらは文字列として扱われ、文字列配列引数としてメイン関数に渡されます。引数はスペースで区切られた値として渡す必要があります。文字列や基本データ型をコマンドライン引数として渡すことができます。引数は文字列に変換され、メインメソッドの文字列配列引数に渡されます。
Javaでのコマンドライン引数
簡単なJavaクラスを作成して、コマンドライン引数の値を出力するとしましょう。
package com.scdev.examples;
public class CommandLineArguments {
public static void main(String[] args) {
System.out.println("Number of Command Line Argument = "+args.length);
for(int i = 0; i< args.length; i++) {
System.out.println(String.format("Command Line Argument %d is %s", i, args[i]));
}
}
}
もし引数なしでこのクラスを実行すると、以下のような出力結果になります。
$ java com/scdev/examples/CommandLineArguments.java
Number of Command Line Argument = 0
さて、メインクラスにいくつかの引数を渡しましょう。引数はスペースで区切られた値として渡さなければなりません。
$ java com/scdev/examples/CommandLineArguments.java "A" "B" "C"
Number of Command Line Argument = 3
Command Line Argument 0 is A
Command Line Argument 1 is B
Command Line Argument 2 is C
$ java com/scdev/examples/CommandLineArguments.java 1 2 3
Number of Command Line Argument = 3
Command Line Argument 0 is 1
Command Line Argument 1 is 2
Command Line Argument 2 is 3
$
注意:Java 11以上を使用している場合、Javaソースファイルを明示的にコンパイルする必要はありません。javaコマンドはクラスを同時にコンパイルして実行します。
エクリプスでコマンドライン引数を渡す方法
Eclipseの「Run Configurations」を使用して、プログラムにコマンドライン引数を渡すこともできます。
ステップ1:クラスの実行設定を開く
クラスのエディターから、右クリックして「実行」→「実行設定…」を選択します。
ステップ2:引数タブでプログラム引数を指定します。
ポップアップウィンドウで、「引数」タブをクリックしてください。そして、「プログラム引数」というテキストボックスにコマンドライン引数の値を入力してください。
ステップ3: 実行ボタンをクリックしてください。
実行ボタンをクリックすると、実行設定が保存され、指定したコマンドライン引数でプログラムが実行されます。
もしクラスを再度実行する場合、保存された実行設定が使用されます。したがって、コマンドラインの引数を上書きしたり、削除したりする場合は、実行設定ウィンドウを開き、必要な変更を行う必要があります。
結論
プログラムを実行するために必要な値を提供するために、コマンドライン引数が使用されます。例えば、プログラムが使用するデータベースの認証情報を指定することができます。また、プログラムが必要な値を取得するための設定ファイルの場所も指定することができます。参考:コマンドライン引数オラクルドキュメント