開発環境
PR

【Laragon番外編10】Java 25とMaven 3.9.16を導入|VS Codeでデバッグ・JAR実行まで

Laragon番外編10でJava 25とMaven 3.9.16の開発環境を構築する記事のアイキャッチ画像
toshi
記事内に商品プロモーションを含む場合があります
最終更新:2026年9月23日

Laragon番外編10では、Windows 11のLaragon環境へJava 25とMaven 3.9.16を導入し、Javaプログラムの作成・コンパイル・実行から、VS Codeでのデバッグ、Mavenプロジェクトの生成、JARファイルの実行まで進めます。

JavaやMavenをインストールして終わりではありません。

実際にHelloToshiLab.javaを作成してコンパイルし、VS CodeからRun・Debugを確認します。

さらにMavenでは、実際にプロジェクトを生成してJUnitテストとビルドを実行し、最終的にはJava 25をターゲットにした実行可能JARを作成して、

Hello World!

と表示できるところまで確認します。

この記事の最終目標は、

Laragon上でJava 25 + Maven 3.9.16 + VS Codeの開発環境を整え、Javaコードのコンパイル・デバッグ・Mavenビルド・実行可能JARの起動まで確認すること

です。

Spring Bootについては今回の記事へ詰め込まず、JavaとMavenの基礎環境を確認したあと、別の記事で扱います。

前回|Laragon番外編9 Ruby on Rails

前回のLaragon番外編9では、Ruby 3.4.10の環境へRuby on Rails 8.1.3.1を導入し、実際にRailsアプリを作成してブラウザで動作確認しました。

今回はRuby・Railsから離れ、Javaの開発環境へ進みます。

Laragon番外編9 Ruby on Railsへ
Laragon番外編9|Ruby on Railsを導入して動かす|Rails 8.1.3.1・Puma・VS Code・500エラー対処まで
Laragon番外編9|Ruby on Railsを導入して動かす|Rails 8.1.3.1・Puma・VS Code・500エラー対処まで

画像内では「MavenのPATHを設定」としていますが、今回の実機環境ではWindowsのシステムPATHへ直接Mavenを追加するのではなく、LaragonですでにPATHへ含まれているC:\laragon\usr\binへmvn.cmdを用意する方法を使用しました。

今回確認したJava開発環境

今回、実機で確認した主な環境は次のとおりです。

項目使用環境
OSWindows 11
LaragonLaragon 2026 v8.6.1
JDKEclipse Temurin 25.0.4.1+1 LTS
Java25.0.4.1
javac25.0.4.1
MavenApache Maven 3.9.16
エディターVisual Studio Code
Java拡張Language Support for Java(TM) by Red Hat
デバッグ拡張Debugger for Java
MavenプロジェクトMaven Quickstart 1.5

今回使用したJavaは、Eclipse Adoptiumが提供するTemurin JDKです。

ここで表示される「Eclipse」はEclipse IDEを使用しているという意味ではなく、JDKの提供元であるEclipse Adoptiumを示しています。

1.Java導入前の状態を確認する

最初に、Javaを追加する前のLaragon TerminalでJavaが利用できる状態か確認しました。

where.exe java
java -version
javac -version
BAT (Batchfile)

今回の環境では、where.exe javaでは実行ファイルが見つからず、java -versionとjavac -versionもコマンドとして認識されていませんでした。

Java導入前は、Laragon Terminalからjavaとjavacを利用できない状態でした。

新しい開発環境を追加するときは、最初に「現在何が使えるのか」を確認しておくと、導入後の変化が分かりやすくなります。

今回もJava導入前と導入後の両方を確認しています。

2.Eclipse Temurin JDK 25をLaragonへ追加する

今回はWindows x64向けの、

OpenJDK25U-jdk_x64_windows_hotspot_25.0.4.1_1.zip

を使用しました。

ZIPを展開し、LaragonのJava用フォルダへ配置します。

今回使用した場所は、

C:\laragon\bin\java\jdk-25.0.4.1+1

です。

  1. Eclipse Temurin JDK 25のWindows x64 ZIP版を入手する
  2. ZIPファイルを展開する
  3. C:\laragon\bin\java\の下へJDKフォルダを配置する
  4. Laragonをいったん終了する
  5. Laragonを再起動する
  6. 新しいLaragon Terminalを開く
  7. Java・javac・JAVA_HOMEを確認する

今回の環境では、JavaをLaragon配下へ配置してLaragonを再起動すると、Javaの実行パスとJAVA_HOMEが認識されました。

Windowsのシステム環境変数へJavaのPATHを手動追加する作業は行っていません。

3.Java 25とJAVA_HOMEを確認する

Laragonを再起動したら、新しいLaragon Terminalを開きます。

次のコマンドでJava環境を確認します。

where.exe java
java -version
javac -version
echo %JAVA_HOME%
BAT (Batchfile)

今回の環境では、

C:\laragon\bin\java\jdk-25.0.4.1+1\bin\java.exe

が使用され、

java -version

では、

25.0.4.1

を確認できました。

javac -versionも、

javac 25.0.4.1

です。

さらにJAVA_HOMEには、

C:\laragon\bin\java\jdk-25.0.4.1+1

が設定されていました。

Java環境を確認するときは、java -versionだけではなく、

・where.exe java

・java -version

・javac -version

・echo %JAVA_HOME%

まで確認しておくと、どのJavaを実行しているのか、コンパイラが利用できるか、JAVA_HOMEがどこを向いているかをまとめて確認できます。

4.HelloToshiLab.javaを作成してコンパイルする

Java本体を確認できたので、実際にJavaプログラムを作成します。

今回は、

C:\laragon\www\java-test

というフォルダを作成し、

HelloToshiLab.java

を用意しました。

対象ファイルとJavaコードは下記です。

C:\laragon\www\java-test\HelloToshiLab.java
Plaintext
public class HelloToshiLab {
    public static void main(String[] args) {
        System.out.println("Hello, ToshiLab!");
    }
}
Java

保存したら、Laragon Terminalからコンパイルと実行を行います。

javac HelloToshiLab.java
java HelloToshiLab
BAT (Batchfile)

正常に実行できると、

Hello, ToshiLab!
Plaintext

と表示されます。

javac HelloToshiLab.java

を実行すると、

HelloToshiLab.class

が生成されます。

続けて、

java HelloToshiLab

を実行します。

今回の環境では、

Hello, ToshiLab!

と表示されました。

ここまでで、Java 25が単にインストールされているだけではなく、ソースコードをコンパイルして実行できる状態まで確認できました。

5.VS CodeでJavaを実行・デバッグする

次に、VS CodeからJavaを扱える状態にします。

今回の環境では、Red Hatの、

Language Support for Java(TM)

を使用しました。

ただし、Javaコードの上に最初はRun | Debugが表示されませんでした。

確認すると、Microsoftの、

Debugger for Java

はインストール済みでしたが、無効になっていました。

そこでDebugger for Javaを有効にすると、main()の上へ、

Run | Debug

が表示されました。

古いjava.homeが残っていた場合

今回のVS Code設定には、以前使用していたJava 8の設定として、

C:\Program Files\Java\jdk1.8.0_251

が残っていました。

古いjava.homeをそのまま使わず、今回のJDK 25をJava Language Serverが参照できるように設定しました。

"java.jdt.ls.java.home": "C:\\laragon\\bin\\java\\jdk-25.0.4.1+1"
JSON

今回残っていた古い設定は、

"java.home": "C:\\Program Files\\Java\\jdk1.8.0_251"
JSON

でした。

古いJDKを参照している環境では、そのまま残さず現在使用するJava環境を確認してください。

設定後、Java Language ServerがJDK 25を認識し、Java関連のエラー通知も解消しました。

ブレークポイントを使ってDebugする

HelloToshiLab.javaの、

System.out.println("Hello, ToshiLab!");

の行へブレークポイントを設定してDebugを実行しました。

今回の環境では、ブレークポイントで正常に停止しました。

その後、Continueで処理を続行すると、

Hello, ToshiLab!

も正常に出力されました。

Javaコード自体に問題がなくても、VS Code側でRun | Debugが表示されない場合があります。

今回の実機では、Debugger for Javaがインストール済みでも無効になっていたことが原因でした。

Language Support for JavaとDebugger for Javaは役割が異なるため、デバッグを使用する場合はDebugger for Javaが有効になっているかも確認します。

6.Apache Maven 3.9.16をLaragonへ追加する

Java単体の動作確認ができたので、次はMavenを追加します。

今回は、

apache-maven-3.9.16-bin.zip

を使用しました。

展開したフォルダは、

C:\laragon\bin\maven\apache-maven-3.9.16

へ配置しています。

まず、Maven本体をフルパスで直接実行できるか確認しました。

"C:\laragon\bin\maven\apache-maven-3.9.16\bin\mvn.cmd" -version
BAT (Batchfile)

今回の実機では、

Apache Maven 3.9.16
Plaintext

この状態ではMaven 3.9.16そのものは正常に動作し、Java 25.0.4.1を使用していることも確認できました。

ところがLaragonを再起動しても、

mvn -version

だけではMavenが認識されませんでした。

Javaとは挙動が異なり、

C:\laragon\bin\maven\apache-maven-3.9.16\bin

までは自動的にPATHへ追加されていませんでした。

今回の実機では、

JavaはLaragon再起動後に自動認識されましたが、Mavenは同じ方法だけではmvnコマンドとして認識されませんでした。

「Laragonのbin配下へ置けば、どのツールでも自動的にネストしたbinまでPATHへ追加される」と考えないように注意してください。

7.Laragonからmvnを使えるようにする

Laragon TerminalのPATHには、

C:\laragon\usr\bin

が含まれています。

そこで今回は、この場所へMaven本体を呼び出す、

mvn.cmd

を作成しました。

保存場所は、

C:\laragon\usr\bin\mvn.cmd

です。

内容を確認します。
保存先:

C:\laragon\usr\bin\mvn.cmd
Plaintext

コード:

@echo off
call "C:\laragon\bin\maven\apache-maven-3.9.16\bin\mvn.cmd" %*
BAT (Batchfile)

これはMaven本体を複製するものではなく、Laragon Terminalから通常のmvnコマンドとして呼び出せるようにするためのラッパーです。

保存後、新しいLaragon TerminalでMavenを確認します。

where.exe mvn
mvn -version
BAT (Batchfile)

今回の環境では、

where.exe mvn

の結果として、

C:\laragon\usr\bin\mvn.cmd

が表示されました。

mvn -versionでは、

・Apache Maven 3.9.16

・Java 25.0.4.1

・Eclipse Adoptium

・Windows 11

を確認できました。

今回使用したmvn.cmdは、Maven本体を別の場所へコピーしているわけではありません。

Laragonから呼び出しやすい場所に小さな入口を用意し、

C:\laragon\bin\maven\apache-maven-3.9.16\bin\mvn.cmd

を実行しています。

そのため、Maven本体はLaragonのbin\maven配下で管理したまま使用できます。

8.Mavenプロジェクトを作成する

Mavenを利用できるようになったので、実際のJavaプロジェクトを作成します。

今回はLaragonの、

C:\laragon\www

の下へ、

java-maven-test

というプロジェクトを作成しました。

実行したコマンドは下記です。

使用場所:Laragon Terminal

cd C:\laragon\www

mvn archetype:generate -DgroupId=jp.toshilab -DartifactId=java-maven-test -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.5 -DinteractiveMode=false
BAT (Batchfile)

生成されるプロジェクト:

C:\laragon\www\java-maven-test
Plaintext

設定内容は

groupId:jp.toshilab
artifactId:java-maven-test
archetypeArtifactId:maven-archetype-quickstart
archetypeVersion:1.5
Plaintext

です。

今回指定した主な値は次のとおりです。

  • groupId:jp.toshilab
  • artifactId:java-maven-test
  • Archetype:maven-archetype-quickstart
  • Archetype Version:1.5
  • Interactive Mode:false

処理の最後に、

BUILD SUCCESS

が表示され、プロジェクトが生成されました。

9.VS CodeでMavenプロジェクトを確認する

作成した、

C:\laragon\www\java-maven-test

をVS Codeで開きます。

Maven Quickstartによって、Javaのソースコードだけではなく、テスト用ファイルやpom.xmlも生成されています。

主に確認しておきたいのは、

・src/main/java:アプリケーション側

・src/test/java:テスト側

・pom.xml:Mavenのプロジェクト設定

・target:ビルド後の成果物を保存する場所

という点です。

10.mvn clean packageでテストとJAR生成を確認する

プロジェクトへ移動したら、最初のMavenビルドを実行します。

使用場所:C:\laragon\www\java-maven-test

cd C:\laragon\www\java-maven-test

mvn clean package
BAT (Batchfile)

今回の実機ではJUnitテストが、

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
Plaintext

となり

BUILD SUCCESS
Plaintext

ビルド結果は上記となり、テストに成功しました。

今回のMaven Quickstartでは、JUnitテストも自動生成されています。

さらに、

java-maven-test-1.0-SNAPSHOT.jar

も生成され、

BUILD SUCCESS

となりました。

targetフォルダのJARも確認する

実際に生成されたJARファイルは、targetフォルダからも確認できます。

まず、コンパイル済みクラスを直接実行します。

java -cp target\classes jp.toshilab.App
BAT (Batchfile)

結果:

Hello World!
Plaintext

続けて、生成されたJARを確認します。

dir target\*.jar
BAT (Batchfile)

今回生成されたJARは、

java-maven-test-1.0-SNAPSHOT.jar
Plaintext

です。

JARをクラスパスとして実行する場合も、

java -cp target\java-maven-test-1.0-SNAPSHOT.jar jp.toshilab.App
BAT (Batchfile)

で

Hello World!
Plaintext

を確認できました。

Mavenのtargetフォルダにjava-maven-test-1.0-SNAPSHOT.jarが生成されています。

11.JDK 25でも最初のMaven設定はrelease 17だった

ここで一つ重要な点があります。

今回実行しているJavaそのものは25ですが、Maven Quickstart 1.5で生成されたpom.xmlでは、

maven.compiler.release

が、

17

になっていました。

つまり、

MavenをJDK 25で実行していること

と、

作成するJavaプログラムのターゲットを25にすること

は別の設定です。

mvn -versionでJava 25が表示されても、それだけでプロジェクトがJava 25向けにコンパイルされるとは限りません。

pom.xmlの、

maven.compiler.release

も確認します。

12.そのままではjava -jarで起動できなかった

生成されたJARに対して、最初に、

使用場所:C:\laragon\www\java-maven-test

java -jar target\java-maven-test-1.0-SNAPSHOT.jar
BAT (Batchfile)

この段階ではMain-Classが設定されていないため、今回の実機では、

target\java-maven-test-1.0-SNAPSHOT.jarにメイン・マニフェスト属性がありません
Plaintext

となりました。

これはJAR生成そのものの失敗ではありません。

JARファイル自体の生成には成功していますが、java -jarで直接起動するためのMain-Classがまだ設定されていません。

13.pom.xmlへMain-Classを設定する

java -jarで起動できるよう、pom.xmlへmaven-jar-pluginの設定を追加します。

今回のMain-Classは、

jp.toshilab.App

です。

追加内容は下記です。

対象ファイル:

C:\laragon\www\java-maven-test\pom.xml
Plaintext

~ 省略 ~

<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>3.4.2</version>
    <configuration>
      <archive>
        <manifest>
          <mainClass>jp.toshilab.App</mainClass>
        </manifest>
      </archive>
    </configuration>
  </plugin>
</plugins>
XML

Main-Classとして、

jp.toshilab.App
Plaintext

maven-jar-pluginのmanifestへjp.toshilab.AppをMain-Classとして指定しました。

これによって、生成するJARへ起動クラスを記録できます。

14.MavenのコンパイルターゲットをJava 25へ変更する

続いて、pom.xmlの、

maven.compiler.release

を17から25へ変更します。

訂正前

<maven.compiler.release>17</maven.compiler.release>
XML

訂正後

<maven.compiler.release>25</maven.compiler.release>
XML

これによって、Mavenが使用しているJDKだけではなく、プロジェクト自体もJava 25をターゲットにしてコンパイルします。

pom.xmlを保存したところ、今回のVS Codeでは、

A build file was modified. Do you want to synchronize the Java classpath/configuration?

という通知が表示されました。

今回はYesを選択しました。

pom.xmlの変更後、VS CodeからJava classpath/configurationの同期を求められる場合があります。

今回の環境ではYesを選択して変更内容を同期しました。

15.Java 25をターゲットに再ビルドする

Main-ClassとJava 25の設定ができたので、もう一度Mavenでビルドします。

mvn clean package
BAT (Batchfile)

今回の実機では、

Compiling 1 source file with javac [debug release 25] to target\classes
Plaintext

テスト側でも、

Compiling 1 source file with javac [debug release 25] to target\test-classes
Plaintext

を確認しました。

JUnitも、

Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
Plaintext

となり、最終的に、

BUILD SUCCESS
Plaintext

となりました。

Java 25をターゲットに変更後、Mavenのコンパイル・JUnitテスト・JAR生成が正常に完了しました。

16.Java 25で作成したJARを実行する

最後に、生成したJARを直接実行します。

使用場所:C:\laragon\www\java-maven-test

java -jar target\java-maven-test-1.0-SNAPSHOT.jar
BAT (Batchfile)

今回の最終結果は、

Hello World!
Plaintext

です。

これで、

Java 25
↓
Maven 3.9.16
↓
JUnitテスト
↓
JAR生成
↓
Main-Class設定
↓
Java 25ターゲットで再ビルド
↓
java -jarで実行
Plaintext

まで確認できます。

今回の環境では、

Hello World!

と表示されました。

Java 25でビルドした実行可能JARをjava -jarで起動し、Hello World!が表示されるところまで確認できました。

ここまで確認できれば、

JDK導入 → javacによるコンパイル → VS Codeデバッグ → Maven導入 → Mavenプロジェクト作成 → JUnitテスト → Java 25ビルド → 実行可能JAR

というJava開発の基本的な一連の流れを、Laragon上で実際に確認できたことになります。

PR:別冊(必要な方だけ)

PR:『スッキリわかるJava入門 第5版』

LaragonでJava 25を利用できる環境を整え、Mavenを使ったビルドやJARファイルの実行まで確認できたら、次はJavaそのものをもう少し深く学んでみませんか?

『スッキリわかるJava入門 第5版』はJava 25に対応しており、Javaプログラムの基本から、クラスや継承、多態性、カプセル化といったオブジェクト指向まで段階的に学ぶことができます。

今回の記事ではJava 25の導入からMavenプロジェクトの作成、テスト、ビルド、JARの実行まで確認しました。その環境を使って、これからJavaのプログラミングを本格的に学びたい方におすすめの一冊です。

※本書はJava 25に対応しています。Mavenなど各種開発ツールのバージョンや設定については、本記事や各ツールの公式ドキュメントもあわせてご確認ください。

※価格や在庫、版数は変わるため、最終確認はリンク先でお願いします。

今回確認できたこと

今回のLaragon番外編10では、Javaをインストールするだけではなく、実際にJavaとMavenを使った開発環境を構築しました。

  • Eclipse Temurin JDK 25.0.4.1+1をLaragonへ追加
  • Java 25とjavac 25.0.4.1を確認
  • JAVA_HOMEを確認
  • HelloToshiLab.javaをコンパイル・実行
  • VS CodeでJavaをRun・Debug
  • ブレークポイントで停止できることを確認
  • Apache Maven 3.9.16をLaragonへ追加
  • mvn.cmdから通常のmvnコマンドを利用
  • Maven Quickstartプロジェクトを生成
  • JUnitテスト成功
  • JARファイルを生成
  • Main-Classを設定
  • maven.compiler.releaseを25へ変更
  • Java 25ターゲットで再ビルド
  • java -jarでHello World!を確認

まとめ

今回はWindows 11のLaragon環境へ、Eclipse Temurin JDK 25.0.4.1+1とApache Maven 3.9.16を追加しました。

Javaでは、

HelloToshiLab.java

を実際に作成し、javacでコンパイルして、

Hello, ToshiLab!

を表示しています。

VS CodeではLanguage Support for JavaとDebugger for Javaを利用し、Runだけでなくブレークポイントを使ったDebugまで確認しました。

MavenではQuickstartプロジェクトを作成し、JUnitテストとJAR生成を実行しています。

また、JDK 25を使用していてもQuickstartで生成されたプロジェクトのmaven.compiler.releaseは17だったため、最終的に25へ変更しました。

Main-Classも設定し、最後は、

java -jar target\java-maven-test-1.0-SNAPSHOT.jar

から、

Hello World!

を表示できています。

JavaやMavenは設定項目が多く見えますが、

・今どのJavaを使っているのか

・MavenがどのJavaを参照しているのか

・プロジェクトがどのJavaバージョンをターゲットにしているのか

を一つずつ確認すると、環境を切り分けやすくなります。

Laragon番外編の流れを確認する

Laragon番外編を最初から確認したい場合は、Laragon番外編1から複数バージョンを追加・切り替える基本的な仕組みを確認できます。

Laragon番外編1・シリーズ入口へ
Laragon番外編1|複数バージョンを追加・切り替える仕組みを理解する
Laragon番外編1|複数バージョンを追加・切り替える仕組みを理解する

次はSpring Bootを使ったWeb開発へ

今回のLaragon番外編10では、Java 25とMaven 3.9.16をLaragon環境へ導入し、Javaプログラムのコンパイル・実行、VS Codeでのデバッグ、Mavenプロジェクトの生成、JUnitテスト、Java 25をターゲットにしたビルド、実行可能JARの起動まで確認しました。

ここまでで、Laragon上でJavaとMavenを使うための基本的な開発環境は整いました。

次は、今回構築したJava・Maven環境を土台として、Spring Bootを使ったWebアプリケーション開発を実機で確認しました。

Spring Bootでは、Java単体のプログラムとは異なり、Webサーバーを起動してブラウザからアクセスするところまで進めます。

Java・Mavenの基礎環境とSpring Bootを分けて確認しておくことで、問題が発生した場合にも、Java・Maven側の問題なのか、Spring Boot側の設定なのかを切り分けやすくなります。

Laragon番外編11 Spring Boot 4.1.1を動かす|Java 25・Maven 3.9.16
【Laragon番外編11】Spring Boot 4.1.1を動かす|Java 25・Maven 3.9.16でWebアプリとREST APIを確認
【Laragon番外編11】Spring Boot 4.1.1を動かす|Java 25・Maven 3.9.16でWebアプリとREST APIを確認

その後のLaragon番外編については、Laragon環境のバックアップ・復元を扱う記事、またはシリーズ全体を整理するまとめ記事へ進むことを検討しています。

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

ABOUT ME
toshi
toshi
フルスタックエンジニア
C型肝炎や感染症の闘病を経て現在通院中
フリーランスとして今日を生きる、それがすべて。
静かな光の中で、歩みを止めずに生きていく。
実験大好きなので色々とやっていきます。
記事URLをコピーしました