簡體   English   中英

如何將 servlet api 添加到我的 pom.xml

[英]how to add the servlet api to my pom.xml

如何將 servlets API 添加到我項目的 pom.xml

mvnrepository.com 有很多 servlet api 和類似名稱的項目,我不知道哪個是正確的。 還是全部都ok?

我相信大多數web / app服務器捆綁了一個版本的servlet api,因此你不希望在你的.war文件中捆綁api。 您需要找出服務器附帶的版本,然后才能使用

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>${servlet-api-version}</version>
    <scope>provided</scope>
</dependency>

用您的版本替換servlet-api-version。 您需要指定“提供的”范圍,以便api.jar不包含在war文件中。

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

我們用

<dependency>
    <groupId>javax</groupId>
    <artifactId>j2ee</artifactId>
    <version>1.4</version>
    <scope>provided</scope>
</dependency>

但如果您只需要servlet api,則可能需要使用

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

對於servlet-api 3.1.0,這是聲明:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
</dependency>

這取決於您使用的servlet API的版本。

javax.servlet工件將為所有servlet API版本提供jar。

雅加達EE

近年來,Oracle 將 Java EE 技術轉讓給Eclipse 基金會 那里的技術已重命名為Jakarta EE 所以Java Servlet現在被稱為Jakarta Servlet

此名稱更改是為了尊重 Oracle 的商標。 進行 Web 搜索,找到許多討論此過渡的文章和視頻。

此名稱更改包括將類的 package 命名從javax.*更改為jakarta.* 這是一個突破性的變化,盡管更新你的項目可能就像僅僅改變你的import語句一樣簡單。 但是請檢查您依賴的任何庫是否也有使用新命名的可用版本。

小服務程序 5

這種轉變帶來了新版本的 Servlet 規范。 規范的版本 5Servlet 4相同,但使用了新的命名。

對於當前版本,編輯您的POM文件以使用以下 Maven 依賴項。 檢查您在版本編號中選擇的 Maven 存儲庫中的更新

您可以將使用 Servlet 5 構建的 web 個應用程序部署到 web 個容器,例如 Tomcat 10.0.x、Jetty 11.0.x、Glassfish 6 等。

<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>5.0.0</version>
    <scope>provided</scope>
</dependency>

小服務程序 6

Jakarta Servlet 6規范目前正在開發中,並將包含重大更改。 該規范將於今年晚些時候 2022 年最終確定。

查看概述頁面產品頁面項目鏈接頁面存儲庫坐標頁面

<dependency>
    <groupId>jakarta.servlet</groupId>
    <artifactId>jakarta.servlet-api</artifactId>
    <version>6.0.0</version>
    <scope>provided</scope>
</dependency>

當您不想將jar文件放在WEB-INF/lib文件夾中而不是在運行時通過容器或JDK提供它時,可以使用提供的作用域。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM