1.2. 关于 Apache Maven 和 Quarkus


Apache Maven 是一个分布式构建自动化工具,用于 Java 应用程序开发,用于创建、管理和构建软件项目。Maven 使用名为 Project Object Model(POM)文件的标准配置文件来定义项目并管理构建流程。POM 文件描述了模块和组件依赖项,使用 XML 文件描述生成的项目打包和输出的构建顺序和目标,确保项目被正确构建并统一。

Maven 存储库

Maven 存储库存储 Java 库、插件和其他构建构件。默认公共存储库是 Maven 2 Central Repository,但存储库可以是私有和内部的,以在开发团队之间共享通用工件。也可从第三方提供存储库。

您可以将 Red Hat-hosted Maven 存储库与 Quarkus 项目一起使用,也可以下载红帽构建的 Quarkus Maven 存储库。

Maven 插件

Maven 插件是 POM 文件的定义部分,用于运行一个或多个任务。红帽构建的 Quarkus 应用程序使用以下 Maven 插件:

  • Quarkus Maven 插件(quarkus-maven-plugin) :启用 Maven 来创建 Quarkus 项目,将应用程序打包到 JAR 文件中,并提供开发模式。
  • Maven Surefire 插件(maven-surefire-plugin): 当 Quarkus 启用 测试 配置集时,会在构建生命周期的测试阶段使用 Maven Surefire 插件在应用程序上执行单元测试。该插件生成包含测试报告的文本和 XML 文件。

1.2.1. 为在线存储库配置 Maven settings.xml 文件

要将 Red Hat-hosted Quarkus 存储库与您的 Quarkus Maven 项目搭配使用,请为您的用户配置 settings.xml 文件。与存储库管理器或共享服务器上的存储库一起使用的 Maven 设置可以提供更好的项目控制和易管理性。

注意

当您修改 Maven settings.xml 文件来配置存储库时,这些更改将应用到所有 Maven 项目。如果只想将配置应用到特定的项目,请使用 -s 选项并指定特定于项目的 settings.xml 文件的路径。

流程

  1. 在文本编辑器中或集成开发环境(IDE)中打开 Maven $HOME/.m2/settings.xml 文件。

    注意

    如果 $HOME/.m2/ 目录中没有 settings.xml 文件,请将 settings.xml 文件从 $MAVEN_HOME/.m2/conf/ 目录中复制到 $HOME/.m2/ 目录中。

  2. settings.xml 文件的 <profiles > 元素中添加以下行:

    <!-- Configure the Quarkus Maven repository -->
    <profile>
      <id>red-hat-enterprise-maven-repository</id>
      <repositories>
        <repository>
          <id>red-hat-enterprise-maven-repository</id>
          <url>https://maven.repository.redhat.com/ga/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>red-hat-enterprise-maven-repository</id>
          <url>https://maven.repository.redhat.com/ga/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
    Copy to Clipboard Toggle word wrap
  3. settings.xml 文件的 < activeProfiles > 元素中添加以下行并保存文件。

    <activeProfile>red-hat-enterprise-maven-repository</activeProfile>
    Copy to Clipboard Toggle word wrap

1.2.2. 配置 Quarkus Maven 存储库

如果您不想使用在线 Maven 存储库,您可以下载并配置 Quarkus Maven 存储库,以使用 Maven 创建 Quarkus 应用程序。Quarkus Maven 存储库包含多个依赖项,Java 开发人员通常用来构建应用程序。此流程演示了如何编辑 settings.xml 文件来配置 Quarkus Maven 存储库。

注意

当您修改 Maven settings.xml 文件来配置存储库时,更改将应用到所有 Maven 项目。如果要将配置应用到特定的项目,请使用 -s 选项并指定特定于项目的 settings.xml 文件的路径。

流程

  1. 登录到红帽客户门户网站,进入 Software Downloads,再下载 Quarkus Maven 存储库 ZIP 文件。
  2. 提取下载的存档。
  3. 进入 $HOME/.m2/ 目录,并在文本编辑器中打开 Maven settings.xml 文件,或一个集成的开发环境(IDE)。
  4. 将您下载的 Quarkus Maven 存储库路径添加到 settings.xml 文件的 <profiles > 元素中。Quarkus Maven 存储库的路径的格式必须是 file://$PATH,例如 file:///home/userX/<root-directory-of-the-downloaded-archive>/maven-repository

    <!-- Configure the Quarkus Maven repository -->
    <profile>
      <id>red-hat-enterprise-maven-repository</id>
      <repositories>
        <repository>
          <id>red-hat-enterprise-maven-repository</id>
          <url>file:///path/to/Quarkus/Maven/repository/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>red-hat-enterprise-maven-repository</id>
          <url>file:///path/to/Quarkus/Maven/repository/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
    Copy to Clipboard Toggle word wrap
  5. settings.xml 文件的 < activeProfiles > 元素中添加以下行并保存文件。

    <activeProfile>red-hat-enterprise-maven-repository</activeProfile>
    Copy to Clipboard Toggle word wrap
重要

如果您的 Maven 存储库包含过时的工件,则构建或部署项目时可能会遇到以下 Maven 错误消息之一:

  • 缺少工件 <project_name>
  • [ERROR] Failed to execute goal on project <artifact_name>; Could not resolve dependencies for <project_name>

其中:

  • <artifact_name > 是缺少工件的名称
  • <project_name > 是您要构建的项目的名称

要解决这个问题,请通过删除本地仓库的缓存版本(位于 $HOME/.m2/repository 目录中)来强制下载最新的 Maven 工件。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat