找不到依赖项“jakarta.servlet:jakarta.servlet-api:10.0.0”[重复]

问题描述 投票:0回答:1

我正在 intellij-idea 中开发一个 Maven 项目,出于某种原因决定将我的 java 语言级别从 8 更改为 15,现在它无法识别我导入的 jakarta 包。enter image description here

我尝试使用本地历史记录来恢复代码,但它也不起作用。我尝试在 pom.xml 中添加依赖项,但 jakarta 版本错误。我不知道如何获得正确的版本,因为以前不存在依赖项。我该怎么办?enter image description here

maven servlets
1个回答
1
投票

从 Java 8 到 Java 15 对从

jakarta.*
包导入没有影响。你有一个不同的问题......

无 Servlet 10

您的问题是在 POM 的

10.0.0
元素中指定 Jakarta Servlet API 的版本
dependency

👉🏽 没有 Servlet 10 API。

如何知道有哪些版本可用?

当前版本是6.0,很快就会是6.1Servlet 4.0Servlet 5.0 也很常用。

因此,请在 Maven POM 中使用其中之一:

<!-- https://mvnrepository.com/artifact/jakarta.servlet/jakarta.servlet-api -->
<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>6.1.0</version>
    <scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/jakarta.servlet/jakarta.servlet-api -->
<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>6.0.0</version>
    <scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/jakarta.servlet/jakarta.servlet-api -->
<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>5.0.0</version>
    <scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/jakarta.servlet/jakarta.servlet-api -->
<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>4.0.4</version>
    <scope>provided</scope>
</dependency>

各种应用服务器的某些版本支持特定版本的 Servlet 规范。选择适合您选择的应用程序服务器以及适合您的应用程序所需功能的 Servlet 版本。

因此,来自 Maven 的错误消息指出无法找到依赖项 — 您指定的依赖项不存在。

您可能会感到困惑,因为 Jakarta Servlet 6.0 是 Jakarta EE 10umbrella 规范 的一部分。 (顺便说一句,请注意带有 Servlet 6.1 的 Jakarta EE 11 已经过期,应该很快就会发布。)


顺便说一句,Java 15 已结束生命,不再更新。您应该坚持使用其中之一:

  • Java 的当前版本,现在为 23
  • LTS Java 版本:8、11、17、21,可能还有 25。

请参阅 Wikipedia 上的 Java 版本历史记录

Java 版本按照严格的时间表每六个月发布一次。

Jakarta EE 版本尚未有长期计划。可能会在每次 Java LTS 发布后的六个月内成为目标。

© www.soinside.com 2019 - 2024. All rights reserved.