この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:6
ページ更新者:guest
更新日時:2026-05-15 07:16:53

タイトル: ビルド・パスが不完全であるため、プロジェクトはビルドされませんでした。org.apache.tomcat.InstanceManager のクラス・ファイルが見つかりません。ビルド・パスを修正してから、プロジェクトの取り消しおよび再ビルドを行ってください。
SEOタイトル: Eclipse「org.apache.tomcat.InstanceManager のクラス・ファイルが見つかりません」対処

この記事の要点
  • ビルド・パスが不完全であるため、プロジェクトはビルドされませんでした。org.apache.tomcat.InstanceManager のクラス・ファイルが見つかりません
  • 原因: Eclipse の動的 Web プロジェクトに Tomcat ランタイムが関連付けられていない
  • 対処1: プロジェクト右クリック → プロパティ → ターゲット・ランタイムで Tomcat にチェック
  • 対処2: ターゲット・ランタイム自体が空なら、ウィンドウ → 設定 → サーバー → ランタイム環境で Tomcat を追加
  • 対処後にプロジェクトを右クリック → Maven → 更新 / プロジェクトのクリーンを実行

エラーの状況

Eclipse で動的 Web プロジェクト(Dynamic Web Project)を開いたときに、問題ビューに以下のエラーが表示されます:

Description: ビルド・パスが不完全であるため、プロジェクトはビルドされませんでした。
org.apache.tomcat.InstanceManager のクラス・ファイルが見つかりません。
ビルド・パスを修正してから、プロジェクトの取り消しおよび再ビルドを行ってください。

Resource: (project name)
Path: (project path)
Location: 不明
Type: Java の問題

Eclipse が InstanceManager クラスを見つけられず、プロジェクト全体のビルドが失敗している状態です。同時に「型 org.apache.tomcat.InstanceManager を解決できません」が複数の Servlet クラスで出ます。

原因

org.apache.tomcat.InstanceManagerTomcat のランタイム jar に含まれるクラスです(実体は $CATALINA_HOME/lib/tomcat-api.jar または tomcat-util.jar)。Eclipse は動的 Web プロジェクトに「ターゲット・ランタイム」として Tomcat を関連付けることで、このクラスをクラスパスに通します。

このエラーは以下の状況で発生:

  • git clone した他人のプロジェクトを初めて開いたとき(最頻出)
  • Eclipse に Tomcat ランタイムを登録していない
  • 登録済み Tomcat のパスが無効(フォルダ移動・削除)
  • プロジェクトのターゲット・ランタイムが選択されていない
  • ワークスペースを別 PC からコピーしてきたとき

対処1: ターゲット・ランタイムを設定

プロジェクトを右クリックして プロパティ → ターゲット・ランタイムを開き、Tomcat にチェックを入れます。

手順操作
1プロジェクト右クリック → プロパティ (Properties)
2左ペインから ターゲット・ランタイム (Targeted Runtimes) を選択
3表示されている Tomcat (Apache Tomcat v9.0 など) にチェック
4適用して閉じる
5プロジェクト右クリック → Maven → プロジェクトの更新 (Maven プロジェクトの場合)
6プロジェクト右クリック → クリーン → ビルド

対処2: ランタイム自体が登録されていない場合

「ターゲット・ランタイム」のリストが空、または Tomcat が表示されない場合は、Eclipse 側に Tomcat ランタイムを先に登録します。

ウィンドウ (Window) → 設定 (Preferences)
  → サーバー (Server)
    → ランタイム環境 (Runtime Environments)
      → 追加 (Add...) を押す
      → Apache → Apache Tomcat v9.0 (使うバージョン) を選択
      → 「次へ」
      → Tomcat installation directory にインストール先を指定
        例: C:\apache-tomcat-9.0.85
        Mac: /usr/local/Cellar/tomcat@9/9.0.85/libexec
      → JRE を選択
      → 「完了」

追加後、プロジェクトのプロパティに戻って先ほどの「対処1」を実行します。

対処3: Tomcat フォルダを移動した場合

「ランタイム環境」に Tomcat はあるけれど、Tomcat フォルダ自体を移動・削除した場合は、登録済み Tomcat の「編集 (Edit)」からインストールパスを正しいパスに直します。

確認

対処後、プロジェクトのプロパティ → Java のビルド・パス → ライブラリーを開くと、Apache Tomcat の jar 群が読み込まれていることを確認できます。Servlet クラスを開いて import org.apache.tomcat.InstanceManager; がエラーにならなければ解決です。

関連

  • 同じ原因で「org.apache.tomcat.InstanceManager を解決できません」も同時に発生する
  • Maven プロジェクトなら pom.xml に Servlet API が provided スコープで入っていることを確認
  • Gradle なら compileOnly 'jakarta.servlet:jakarta.servlet-api:6.0.0' 相当