第 2 章 Apache Maven 和 Quarkus
Apache Maven 是 Java 应用程序开发中使用的分布式构建自动化工具,用于创建、管理和构建软件项目。Maven 使用名为 Project Object Model(POM)文件的标准配置文件来定义项目并管理构建流程。POM 文件描述了使用 XML 文件生成项目打包和输出的模块和组件依赖项、构建顺序和目标。这可确保以正确、一致的方式构建项目。
Maven 存储库
Maven 存储库存储 Java 库、插件和其他构建构件。默认公共存储库是 Maven 2 Central Repository,但存储库可以是私有的和内部存储库,以在开发团队之间共享通用工件。也可从第三方获取存储库。
您可以将在线 Maven 存储库与 Quarkus 项目搭配使用,也可以下载 Red Hat build of Quarkus Maven 存储库。
Maven 插件
Maven 插件定义 POM 文件的一部分,该文件可以达到一个或多个目标。Quarkus 应用程序使用以下 Maven 插件:
-
Quarkus Maven 插件(
quarkus-maven-plugin):启用 Maven 创建 Quarkus 项目,支持生成 uber-JAR 文件,并提供开发模式。 -
Maven Surefire 插件(
maven-surefire-plugin):在构建生命周期阶段使用,以便在应用程序上执行单元测试。插件生成包含测试报告的文本和 XML 文件。
2.1. 为在线存储库配置 Maven settings.xml 文件
您可以通过配置用户 settings.xml 文件,将在线 Quarkus 存储库用于 Quarkus Maven 项目。这是推荐的方法。与共享服务器上的存储库管理器或存储库一起使用的 Maven 设置提供更好的控制和领导项目。
当您通过修改 Maven settings.xml 文件来配置存储库时,更改会应用到所有 Maven 项目。
流程
在文本编辑器中打开 Maven
~/.m2/settings.xml文件或集成开发环境(IDE)。注意如果
~/.m2/目录中没有settings.xml文件,请将$MAVEN_HOME/.m2/conf/目录中的settings.xml文件复制到~/.m2/目录中。在
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>将以下行添加到
settings.xml文件的 <activeProfiles> 元素中,并保存文件。<activeProfile>red-hat-enterprise-maven-repository</activeProfile>