第 6 章 将 JBoss EAP 应用的 Maven 项目迁移到 JBoss EAP 8.1


要将 Red Hat JBoss Enterprise Application Platform Maven 项目迁移到 JBoss EAP 8.1,请更新其 pom.xml 文件。该文件必须反映最近的更改。所需的更新取决于源版本。基于 JBoss EAP 8.0 的项目需要对组件版本和频道清单进行协调更新。JBoss EAP 7.4 中的项目需要更多更改。这包括 BOM 重命名、工件删除和更新的依赖项。以下章节解释了如何更新项目以与 JBoss EAP 8.1 兼容。

将 JBoss EAP Maven 项目迁移到 JBoss EAP 8.1 可能需要 pom.xml 文件更新,理由如下:

注意

如果应用程序在没有任何更改的情况下迁移到 JBoss EAP 8.1,则应用将构建具有不正确的依赖项,且无法在 JBoss EAP 8.1 上部署。

6.1.1. JBoss EAP 组件版本不兼容

当您为 JBoss EAP 8.1 中的 Maven 项目更新 pom.xml 文件时,您必须为以下 JBoss EAP 组件更新 Maven 版本协调:

  • JBoss EAP BOMs
  • JBoss EAP Maven 插件

您可以在 Red Hat GA Maven 存储库中为 GA 版本或红帽 早期访问 Maven 存储库 用于 Beta 版本,找到与 JBoss EAP 版本兼容的最新 JBoss EAP 组件版本。

使用以下指南来标识最新兼容版本:

  • 对于 JBoss EAP BOM,请使用 latest 8.1.x.GA-redhat appropriate,其中 x 与 JBoss EAP 8.1.x 版本匹配。例如,使用 8.1.0.GA-redhat-00006
  • 对于 JBoss EAP Maven 插件,请使用 latest 2.0.x.Final-redhat channel。例如,使用 2.0.0.Final-redhat-00003

6.1.2. JBoss EAP 频道清单协调的变化

当您为 JBoss EAP 8.1 中的 Maven 项目更新 pom.xml 文件时,您必须为 JBoss EAP 频道清单更新 Maven artifactId 协调。

  • eap-8.0 替换为 eap-8.1

例如,您可以在 JBoss EAP Maven 插件配置中包含 JBoss EAP 频道清单,如下例所示:

<plugin>
   <groupId>org.jboss.eap.plugins</groupId>
   <artifactId>eap-maven-plugin</artifactId>
   <configuration>
       <channels>
           <channel>
               <manifest>
                   <groupId>org.jboss.eap.channels</groupId>
                   <artifactId>eap-8.0</artifactId>
               </manifest>
           </channel>
       </channels>
   </configuration>
</plugin>

迁移到 JBoss EAP 8.1 后,按如下所示更新插件配置:

<plugin>
   <groupId>org.jboss.eap.plugins</groupId>
   <artifactId>eap-maven-plugin</artifactId>
   <configuration>
       <channels>
           <channel>
               <manifest>
                   <groupId>org.jboss.eap.channels</groupId>
                   <artifactId>eap-8.1</artifactId>
               </manifest>
           </channel>
       </channels>
   </configuration>
</plugin>

6.1.3. Elytron shaded 工件从 JBoss EAP BOMs 中删除

Elytron shaded 工件不被支持,作为 Maven 项目中的依赖项。JBoss EAP EE 和具有工具 Bill of Materials (BOM)的 JBoss EAP EE 和 EE 不再包含 Elytron 捆绑的工件。不要在 Maven 项目中使用此工件作为依赖项。工件包括所有 Elytron 组件的类及其传输依赖项。在 Maven 项目中,这些依赖项无法替换或版本对齐,这可能会导致不兼容的类出现问题。

当您为 JBoss EAP 8.1 中的 Maven 项目更新 pom.xml 文件时,该文件导入 JBoss EAP EE 或 EE with Tools BOMs,删除或替换以下受管依赖项的任何使用:

<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron</artifactId>
</dependency>

如果 Maven 项目使用以下 JBoss EAP 客户端 BOM 之一,则删除 Elytron shaded 工件依赖项:

<dependency>
   <groupId>org.jboss.eap</groupId>
   <artifactId>wildfly-ejb-client-bom</artifactId>
   <type>pom</type>
</dependency>
<dependency>
   <groupId>org.jboss.eap</groupId>
   <artifactId>wildfly-jms-client-bom</artifactId>
   <type>pom</type>
</dependency>

如果 Maven 项目没有使用 JBoss EAP EJB 或 JMS 客户端,请将 Elytron shaded 工件依赖项替换为以下一个或多个 Elytron 组件:

<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-asn1</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-audit</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-auth</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-auth-server</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-auth-server-deprecated</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-auth-server-http</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-auth-server-sasl</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-auth-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-base</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-client</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-credential</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-credential-store</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-digest</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-dynamic-ssl</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-encryption</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-basic</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-bearer</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-cert</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-digest</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-external</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-form</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-oidc</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-spnego</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-sso</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-http-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-json-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-jose-jwk</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-jose-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-keystore</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-mechanism</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-mechanism-digest</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-mechanism-gssapi</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-mechanism-http</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-mechanism-oauth2</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-mechanism-scram</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-password-impl</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-permission</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-realm</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-realm-jdbc</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-realm-ldap</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-realm-token</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-anonymous</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-auth-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-digest</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-entity</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-external</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-gs2</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-gssapi</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-localuser</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-oauth2</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-otp</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-plain</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-sasl-scram</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-security-manager</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-security-manager-action</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-ssl</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-ssh-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-x500</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-x500-cert</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-x500-cert-acme</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-x500-cert-util</artifactId>
</dependency>
<dependency>
   <groupId>org.wildfly.security</groupId>
   <artifactId>wildfly-elytron-x500-principal</artifactId>
</dependency>
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部