コマンド ラインから JAR ファイルを実行する

Beginner

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Ubuntu システム上で Java で JAR ファイルを作成して実行する方法を学びます。JAR は Java Archive の略です。JAR ファイルには、圧縮された Java プロジェクト ファイルが含まれており、それには.class ファイルやプロジェクトに必要なその他のメタデータとリソースが含まれます。コマンド ラインから JAR ファイルを作成して実行する方法について説明します。


Skills Graph

テスト用の Java ファイルを作成する

この手順では、~/project ディレクトリに HelloWorld.java という名前の Java ファイルを作成します。HelloWorld.java の内容は次のようになります。

public class HelloWorld
{
    public static void main(String args[])
    {
        System.out.print("\n\nHello World\n\n");
    }
}

このファイルを使って、後の実験で実行するための JAR ファイルを作成します。

Java ファイルをコンパイルする

この手順では、次の javac コマンドを使って HelloWorld.java ファイルをコンパイルします。

javac ~/project/HelloWorld.java

実行可能な JAR ファイルを作成する

この手順では、実行可能な JAR ファイルを作成します。実行可能な JAR ファイルにはマニフェスト ファイルが含まれていますが、非実行可能な JAR ファイルには含まれていません。このマニフェスト ファイルには、JAR を実行したときに実行するクラスの名前が含まれています。Ubuntu システムでは、このマニフェスト ファイルを使って実行可能な JAR ファイルを次のように作成できます。

  1. ~/project ディレクトリに ManifestFile.txt という名前のファイルを作成し、次の内容をファイルに追加します。
    Main-Class: HelloWorld
  2. 次のコマンドで実行可能な JAR ファイルを作成します。
    jar -cfm ~/project/HelloWorld.jar ~/project/ManifestFile.txt ~/project/HelloWorld.class
    -c フラグはアーカイブ ファイルを作成するために使用されます。-f フラグはファイル名を指定するために使用されます。-m フラグはマニフェスト ファイルの内容を含めるために使用されます。

非実行可能な JAR ファイルを作成する

この手順では、非実行可能な JAR ファイルを作成する方法を学びます。-m フラグを除外します。コマンドにマニフェスト ファイルの名前を渡す必要はありません。次のコマンドを使って非実行可能な JAR ファイルを作成できます。

jar -cf ~/project/HelloWorldNonExec.jar ~/project/HelloWorld.class

実行可能な JAR ファイルを実行する

この手順では、ステップ 3 で作成した実行可能な JAR ファイルを実行する方法を学びます。次のコマンドを使って実行できます。

java -jar ~/project/HelloWorld.jar

このコマンドの出力は次のようになります。

Hello World

非実行可能な JAR ファイルを実行する

この手順では、ステップ 4 で作成した非実行可能な JAR ファイルを実行する方法を学びます。次のコマンドを使って実行できます。

java -cp ~/project/HelloWorldNonExec.jar HelloWorld

このコマンドの出力は次のようになります。

Hello World

コマンド ライン引数付きで JAR ファイルを実行する

この手順では、JAR ファイルを実行する際にコマンド ライン引数を渡す方法を学びます。

  1. ~/project ディレクトリに次のコードを持つ新しい Java クラス CommandLineArgs.java を作成します。

    public class CommandLineArgs {
        public static void main(String args[]) {
            for (String s : args) {
                System.out.println(s);
            }
        }
    }
  2. CommandLineArgs.java をコンパイルします。

    javac ~/project/CommandLineArgs.java
  3. 実行可能な JAR ファイルを作成します。

    jar -cfm ~/project/CommandLineArgs.jar ~/project/ManifestFile.txt ~/project/CommandLineArgs.class
  4. 3 つのコマンド ライン引数を渡すために次のコマンドを実行します。

    java -jar ~/project/CommandLineArgs.jar "Welcome " "Back " User

このコマンドの出力は次のようになります。

Welcome
Back
User

まとめ

おめでとうございます!コマンド ラインから JAR ファイルを実行する実験を完了しました。技術力を向上させるために、LabEx でさらに多くの実験を行って練習してください。