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プロジェクトのエラー: JRE System Libraryやビルドパスの問題をまとめてみた

Posted at

前置き

スクリーンショット 2024-10-11 10.58.20.png

Project configurator 'org.eclipse.buildship.configurators.base' failed to configure project
Unbound classpath container: 'JRE System Library [JavaSE-21]' in project
The project cannot be built until build path errors are resolved

このようなエラーが起きていた。

原因1: JREのバージョンが一致していない

このエラーのよくある原因は、プロジェクトで指定しているJavaバージョン(JRE)と、実際に使用されているJREのバージョンが一致していないことです。

例えば、build.gradleファイル内でJava 21を指定しているのに、EclipseやシステムがJava 17しか認識していないと、このような「Unbound classpath container」エラーが発生します。

どうしてこうなるのか?

Gradleのツールチェーン設定でJava 21を指定していても、Eclipseやローカル環境がJava 21を正しく認識していないと、プロジェクトがビルドできません。
EclipseのBuild Pathで指定されたJREがインストールされていない場合、EclipseはJavaプログラムをどのJREで実行するのかがわからなくなります。

解決方法:

EclipseでのJRE設定を確認:

  • Window > Preferences > Java > Installed JREs を開き、使用するJRE(この場合はJava 21)が正しくインストールされているか確認。
  • JREがリストに表示されていない場合は、Add をクリックし、Java 21を追加します。

プロジェクトのビルドパスを修正:

  • プロジェクトを右クリックし、Build Path > Configure Build Path で JRE System Library を削除し、インストールされたJRE(Java 21など)を追加します。
  • Gradleツールチェーンを確認: build.gradle にJava 21が指定されている場合、以下のような設定が含まれているか確認します。
// build.gradle
java {
    toolchain {
        languageVersion = JavaLanguageVersion.of(21)
    }
}

この設定で、GradleがJava 21を使うように強制します。EclipseとGradleのJavaバージョンを一致させることが重要です。

原因2: EclipseのGradle設定が正しくない

EclipseはBuildshipというGradleのプラグインを使ってプロジェクトを構成しますが、この設定が正しくない場合にも「Project configurator failed」エラーが発生します。

どうしてこうなるのか?

Gradleプロジェクトの構成時に、指定されたJava環境が見つからない、または依存関係が解決されないと、Eclipseはプロジェクトを構築できません。
特に、Gradle wrapperが古いバージョンを使っている場合、Javaのバージョンや依存関係が正しく解決されないことがあります。

解決方法:

Gradleのバージョンを確認: gradle-wrapper.propertiesファイル内で、適切なGradleバージョンが指定されているか確認します。最新バージョンを使うことをお勧めします。

// gradle.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip

プロジェクトをリフレッシュ:

  • Gradle > Refresh Gradle Project を実行して、依存関係と設定を最新の状態に同期します。

Eclipseのキャッシュクリア:

  • Project > Clean でプロジェクトをクリーンし、Eclipseのキャッシュをクリアして再ビルドを行います。

原因3: JREやJDKがそもそもインストールされていない

Javaの実行環境(JRE)や開発環境(JDK)が正しくインストールされていない場合も、このようなエラーが発生します。特に新しいJavaバージョンを使う場合、システムやIDEにそのバージョンがインストールされていないことがあります。

解決方法:

  • Javaのインストール状況を確認: ターミナルやコマンドプロンプトで以下のコマンドを実行し、インストールされているJavaバージョンを確認します。
// bash
java -version

もし、目的のバージョン(例:Java 21)がインストールされていなければ、Oracle JDKやAdoptOpenJDKからダウンロードしてインストールします。

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?