Jenkins - Maven 设置
Jenkins - Maven 集成
Section titled “Jenkins - Maven 集成”Apache Maven 是一个广泛使用的构建自动化和项目管理工具,主要用于 Java 项目。Jenkins 提供了出色的 Maven 集成。
步骤 1:确保 Maven 可用
Section titled “步骤 1:确保 Maven 可用”Jenkins 需要访问 Maven 安装才能构建 Maven 项目。你有两个主要选项:
- 选项 A:预安装 Maven: 在 Jenkins controller 和将运行 Maven 构建的任何 agent 上手动安装 Maven。确保设置了
M2_HOME或MAVEN_HOME环境变量,并且 Maven 的bin目录在系统PATH中。 - 选项 B:Jenkins 自动安装(推荐): 让 Jenkins 自动下载和管理 Maven 安装。
手动下载 Maven(如果选择选项 A):
- 访问 Apache Maven 官方下载页面:https://maven.apache.org/download.cgi
- 下载二进制存档(例如,
apache-maven-X.Y.Z-bin.zip或tar.gz)。 - 将存档解压到合适的位置(例如,
/opt/maven或C:\Tools\Maven)。这就是你的MAVEN_HOME。 - 可选地,将
MAVEN_HOME/bin添加到系统的PATH环境变量中。
步骤 2:在 Jenkins 中配置 Maven
Section titled “步骤 2:在 Jenkins 中配置 Maven”告诉 Jenkins 在哪里找到 Maven 安装或配置自动安装。
- 导航到“管理 Jenkins” → “全局工具配置”。
- 向下滚动到“Maven”部分。
- 点击“新增 Maven”。
- 名称: 给此 Maven 安装一个描述性名称(例如,
Maven 3.8或Default Maven)。此名称在 Pipeline 配置中使用。 - MAVEN_HOME: 如果你已预安装 Maven(选项 A),在此处输入
MAVEN_HOME目录的路径。不要勾选“自动安装”。 - 自动安装: 如果你想让 Jenkins 管理安装(选项 B),勾选此框。从下拉列表中选择一个安装程序(通常是“从 Apache 安装”),并选择所需的 Maven 版本。
- 如果需要配置多个 Maven 版本,重复点击“新增 Maven”。
- 点击“保存”。
步骤 3:在 Pipeline 作业中使用 Maven
Section titled “步骤 3:在 Pipeline 作业中使用 Maven”构建 Maven 项目的推荐方法是使用 Jenkins Pipeline (Jenkinsfile)。
pipeline { agent any // Or agent { label 'maven-agent' }
tools { // Specify the Maven installation configured in Global Tool Configuration maven 'Maven 3.8' // Use the name you defined jdk 'JDK 11' // Also specify JDK if needed }
stages { stage('Checkout') { steps { git url: 'your-repo-url', branch: 'main' } }
stage('Build') { steps { echo 'Building with Maven...' // Jenkins ensures the configured Maven is in the PATH // Use 'mvn' directly sh 'mvn clean package' } }
stage('Test') { steps { echo 'Running tests...' sh 'mvn test' } post { always { // Publish test results junit 'target/surefire-reports/**/*.xml' } } }
// Optional: Stage for deploying artifacts // stage('Deploy Artifact') { // steps { // // Example: Deploy to Nexus/Artifactory // // Requires configuration in pom.xml and settings.xml // // sh 'mvn deploy' // } // } }}说明:
tools代码块: 指定哪些预配置的工具(来自全局工具配置中的名称)应在此 pipeline 的PATH中可用。sh 'mvn ...': 执行标准的 Maven 命令。Jenkins 确保使用tools代码块中指定的正确 Maven 版本。
步骤 4:在自由风格作业中使用 Maven(旧版)
Section titled “步骤 4:在自由风格作业中使用 Maven(旧版)”虽然推荐使用 Pipeline,但你仍然可以使用自由风格作业:
- 创建一个新的“自由风格项目”或配置一个现有的项目。
- 配置源代码管理(例如,Git)。
- 在“构建”部分,点击“新增构建步骤”。
- 选择“调用顶层 Maven 目标”。
- Maven 版本: 选择你在全局工具配置中配置的命名 Maven 安装。
- 目标: 输入要执行的 Maven 目标(例如,
clean package、test、deploy)。 - POM: 指定
pom.xml文件的路径(通常是根目录下的pom.xml)。 - 属性/选项: 添加任何必要的 Maven 属性(
-Dkey=value)或 JVM 选项。 - 根据需要添加构建后操作(例如,“发布 JUnit 测试结果报告”、“归档制品”)。
- 点击“保存”。
Maven 设置文件(settings.xml)
Section titled “Maven 设置文件(settings.xml)”如果你的构建需要自定义 Maven 设置(例如,代理配置、私有仓库镜像、用于部署的服务器凭据),你需要提供一个 settings.xml 文件。
- Config File Provider Plugin: 安装此插件。转到“管理 Jenkins” → “管理文件”。新增一个“Maven settings.xml”文件,粘贴你的设置内容,并给它一个 ID。
- Pipeline: 使用
withMaven包装步骤提供设置文件: withMaven(mavenSettingsConfig: 'your-settings-file-id') { sh 'mvn deploy' }- 自由风格: 在“调用顶层 Maven 目标”步骤中,点击“高级”并选择配置好的设置文件。
适当的 Maven 集成使 Jenkins 能够可靠地构建、测试和打包你的 Java 应用程序。