HOWTO · Java

スーパークラス Javax.Servlet.Http.HttpServlet が Java ビルド パスで見つかりませんでした

このチュートリアルでは、Java ビルド パスにスーパークラス javax.servlet.http.httpservlet が見つからない問題を解決する方法を示します。

このページの内容

このチュートリアルでは、Java で The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path を解決する方法を示します。

スーパークラスjavax.servlet.http.HttpServletが Java のビルド パスで見つかりませんでした

エラー The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path は、Eclipse で最初の JSP コードを記述するとき、または既存の Maven プロジェクトを Eclipse にインポートするときに発生します。

このエラーは、プロジェクトの classpathHttpServlet が使用できないために発生します。

Eclipse クラス パスのソリューション

この問題を解決するには、Apache Tomcat サーバーを Eclipse IDE に追加する必要があります。 この問題を解決するには、以下の手順に従ってください。

  • プロジェクト名を右クリックし、プロパティを開きます。
  • プロジェクト ファセット に移動します。
  • Project Facets を開くと、タブの右側に DetailsRuntimes オプションが表示されます。 ランタイムをクリックします。
  • Apache Tomcat サーバー を選択またはチェックします。
  • 適用をクリックしてから、Okをクリックします。

Apache Tomcat

上記のプロセスに従うと、スーパークラス "javax.servlet.http.HttpServlet" が Java ビルド パスに見つかりませんでしたというエラーが解決されます。

Maven/Gradle のソリューション

このエラーのもう 1つの理由は、Maven または Gradle を使用する場合、servlet-api を Maven または Gradle の依存関係に追加する必要があることです。 以下のプロセスに従ってください。

  • Java サーブレット API をダウンロードします。
  • javax.servlet-api-4.0.1.jar をビルド パスに追加します。
  • javax.servlet-api-4.0.1.jar を依存関係として追加します。

Maven の場合:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
</dependency>

グラドルの場合:

configurations{provided} sourceSets {
  main {
    compileClasspath += configurations.provided
  }
}
dependencies {
  provided 'javax.servlet:javax.servlet-api:4.0.1'
}