0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【初心者向け】Gradleで.jarファイルを作成する手順をわかりやすく解説

Posted at

1. はじめに

Javaでアプリケーションを開発すると、最終的には「.jarファイル(Java Archive)」という形式で成果物をパッケージングすることが多いです。この .jar ファイルは、Javaのクラスやリソースファイルをまとめて配布・実行するための形式で、コマンド一つで簡単にアプリケーションを実行できるようになります。

本記事では、ビルドツールとしてGradleを使用して、シンプルなJavaプロジェクトから .jar ファイルを作成する方法を解説します。

Gradleを使うことで、依存関係の管理やビルド処理を自動化できるため、手作業でのミスを防ぎ、開発の効率を大幅に向上させることができます。

こんな方におすすめです:

  • Gradleを使ったことがない方
  • Javaの .jar ファイルを手軽に作成したい方
  • 学習用や小規模なツールを配布・実行しやすくしたい方

今回は、コマンドラインで操作する基本的な使い方に絞って紹介するので、GradleやJavaに不慣れな方でも安心して読み進めていただけます。

2. 環境情報

この記事を実行するための前提条件として、以下の環境が整っていることが必要です。

前提条件

以下は著者の環境になるので参考までに。

  • Gradleを利用したファイルが作成されていること
    Gradleプロジェクトがすでに作成されていることが前提となります。もしまだ作成していない場合は、まずGradleのプロジェクトを初期化してください。

  • JDKが正しく設定されていること
    本記事では、JDKとして Amazon Corretto 21.0.7_6 を使用しています。以下のコマンドでJDKのバージョンが正しくインストールされていることを確認してください。

    $ java -version
    $ openjdk version "21.0.7" 2025-04-17
    $ OpenJDK Runtime Environment (build 21.0.7+6-29)
    $ OpenJDK 64-Bit Server VM (build 21.0.7+6-29, mixed mode)
    
    

3. build.gradle の設定

Gradleで.jarファイルを作成するためには、まずプロジェクトのルートディレクトリにあるbuild.gradleファイルを設定する必要があります。このファイルに必要なプラグインや設定を記述していきます。

以下の設定をbuild.gradleに追加します。

必要なプラグインの適用

最初に、javaプラグインとapplicationプラグインを適用します。これにより、GradleがJavaプロジェクトとしてビルドできるようになり、アプリケーションを実行可能な.jarファイルにパッケージできます。

plugins {
    id 'java'         // Javaプラグイン
    id 'application'  // アプリケーションプラグイン(実行可能なjarファイルを作成するため)
}
group = 'com.example'    // プロジェクトのグループID(任意)
version = '1.0'          // バージョン(任意)

application {
    mainClass = 'com.example.App'  // 実行するメインクラス(自分のクラス名に変更。ここではAppというクラス)
}

4. .jar ファイルの作成方法

Gradleでは、.jarファイルを作成する方法がいくつかあります。代表的なものとして、以下の3種類があります。

  • jar: 通常の.jarファイルを作成します。依存関係は含まれず、純粋なJavaクラスファイルのみがパッケージされます。
  • bootJar: Spring Bootアプリケーションの場合に使用される.jarファイルを作成します。Spring Bootのアプリケーションを実行するために必要な全ての依存関係が含まれます。
  • build: プロジェクトの全体をビルドします。jarファイルの作成も含まれますが、実行可能な.jarやテスト、リソースなども含まれるため、最も一般的に使用されるコマンドです。

それぞれの違い

  • jar: 最もシンプルなjarファイルを作成しますが、依存関係やリソースファイルは含まれません。
  • bootJar: Spring Bootの場合、実行可能なjarファイルを作成します。アプリケーションに必要な依存関係や設定ファイルが自動的に含まれるため、簡単にアプリケーションを配布・実行できます。
  • build: プロジェクトのビルド全体を行い、.jarファイルを含む成果物を作成します。jarタスクを実行するのとほぼ同じですが、buildタスクには追加の処理(テスト、リソースのコピーなど)が含まれます。

ビルドコマンドの実行

一般的なプロジェクトで.jarファイルを作成するには、gradle buildコマンドを使用します。このコマンドは、上記のjarタスクやbootJarタスクを実行し、最終的に.jarファイルを生成します。

plain jarの作成

$ ./gradle clean jar

実行可能 jarの作成

$ ./gradle clean bootJar

plain jar, 実行可能 jarの作成

$ ./gradle clean build

.jar ファイルの確認

ビルドが成功すると、build/libs/ディレクトリに.jarファイルが生成されます。以下のコマンドで確認できます。

$ ls build/libs/
App.jar

補足:Plain Jar と 実行可能 Jar

  • Plain Jar(通常の .jar
    jar タスクで生成される .jar ファイルは、依存関係が含まれていません。含まれるのは自分のプロジェクトでコンパイルされた Javaクラスファイルやリソースファイルのみ です。
    そのため、この .jar ファイルを実行するには、外部ライブラリ(依存関係)をクラスパスに手動で追加する必要があります。

  • 実行可能な Jar
    実行可能な .jar ファイルには、アプリケーションの エントリーポイント(mainメソッド) に加えて、すべての依存関係やリソース が含まれています。
    たとえば、Spring Boot プロジェクトで使用される bootJar タスクでは、依存関係もすべて含まれた 自己完結型の .jar が生成されます。
    このような .jar ファイルは、次のように コマンド1つで簡単に実行できるのが特徴です。

    $ java -jar build/libs/YourApp-1.0.jar
    

5. Eclipseの「実行構成」に ./gradlew clean bootJar を保存する方法

毎回ターミナルで ./gradlew clean bootJar を手動で入力するのが手間に感じる場合は、Eclipseの「実行構成」にコマンドを登録しておくことで、ワンクリックでビルドを実行できるようになります。

手順

  1. メニューから「実行構成」を開く

    メニューバーの「実行」 > 「実行構成...」をクリックします。

  2. [Gradle タスク] を新規作成

    左ペインから Gradle タスク を選択し、右クリックして「新規」または「構成の新規作成」を選びます。

  3. 任意の名前を設定

    構成にわかりやすい名前(例:Clean and BootJar)を付けます。

  4. プロジェクトを指定

    「プロジェクト」欄で対象のGradleプロジェクトを選択します。

  5. タスクを指定

    「タスク」欄に以下のように入力します:
    clean bootJar

※スペース区切りで複数のタスクを指定できます。

  1. [実行] をクリック

右下の「実行」ボタンをクリックすると、指定したタスク(この場合は cleanbootJar)が順に実行されます。
以下、参考までにbuildが成功した際のメッセージを記載しておきます。

> Task :clean

> Task :compileJava
The LenientConfiguration.getArtifacts(Spec) method has been deprecated. This is scheduled to be removed in Gradle 9.0. Use a lenient ArtifactView with a componentFilter instead. Consult the upgrading guide for further information: https://docs.gradle.org/8.12.1/userguide/upgrading_version_8.html#deprecate_filtered_configuration_file_and_filecollection_methods

> Task :processResources
> Task :classes
> Task :resolveMainClassName
> Task :bootJar

[Incubating] Problems report is available at: file:///C:/pleiades/workspace/App/build/reports/problems/problems-report.html(プロジェクト配下のパスになります)

BUILD SUCCESSFUL in 8s
5 actionable tasks: 5 executed


次回以降の実行方法

一度設定しておけば、次回以降はメニューの「実行」から構成名(例:Clean and BootJar)を選ぶだけで、コマンドを入力せずに実行できます。

また、ショートカットキー(例:Ctrl + F11)でも直前に実行した構成を再実行できます。


このようにして、Eclipse上で ./gradlew clean bootJar を毎回手打ちする必要がなくなり、開発効率を向上させることができます。

まとめ

この記事では、Gradleを使って .jar ファイルを作成する方法について、コマンドラインやEclipseなど複数の手段で解説しました。

  • jar, bootJar, build の違い
  • Plain Jar と実行可能 Jar の特徴
  • Eclipseでのビルド方法とタスクの実行
  • ./gradlew clean bootJar を Eclipse に保存して簡略化する方法

私自身、Spring Boot プロジェクトを WAR ではなく JAR でデプロイしようとしたときに、「どのタスクを実行すればいいの?」「Eclipseからできないの?」「Javaのバージョンエラーってなに?」と多くの壁にぶつかりました。

この記事は、そんな自分自身のつまずきから得た知識をまとめたものであり、同じように悩んでいる方の助けになれば嬉しいです。


最後まで読んでいただき、ありがとうございました!
もし役に立ったと思ったら、いいねやストックしてもらえると励みになります 😊

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?