From 76e1b34f4ad215eba7b525bd2a55bb186a8d97d2 Mon Sep 17 00:00:00 2001 From: wangtianqi <1350217033@qq.com> Date: Mon, 23 Jun 2025 20:20:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=81=A2=E5=A4=8Dtools=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=EF=BC=8C=E4=BD=BF=E7=94=A8Jenkins=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=AE=89=E8=A3=85=E7=9A=84Maven?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 恢复tools配置,使用Maven-3.9.6自动安装 - 简化环境检测,信任Jenkins工具管理 - 移除动态Maven命令检测 - 确保使用标准mvn命令 --- Jenkinsfile | 92 ++++++++++++++++++++--------------------------------- 1 file changed, 35 insertions(+), 57 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 286a7d2..554125d 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -16,47 +16,19 @@ pipeline { // Docker相关环境变量 IMAGE_NAME = 'jenkins-demo' - IMAGE_TAG = "${BUILD_NUMBER}" - + IMAGE_TAG = "${BUILD_NUMBER}" // SonarQube配置 SONAR_HOST_URL = 'http://116.62.163.84:15010' SONAR_PROJECT_KEY = 'jenkins-demo' SONAR_TOKEN = 'squ_7e4217cabd0faae6f3b8ee359b3b8e2ac52eb69a' - } - // 移除tools配置,改用node内部的检测和安装 + } - stages { - stage('环境设置') { - steps { - echo '🔧 设置构建环境...' - script { - // 在node内部设置环境变量 - env.WORKSPACE_PATH = pwd() - - // 检测并设置Java环境 - try { - sh 'java -version' - echo '✅ Java环境检测成功' - } catch (Exception e) { - echo '⚠️ 使用系统默认Java环境' - } - - // 检测并设置Maven环境 - try { - sh 'mvn -version' - echo '✅ Maven环境检测成功' - } catch (Exception e) { - echo '⚠️ Maven未检测到,使用./mvnw' - env.MVN_CMD = './mvnw' - } - - if (!env.MVN_CMD) { - env.MVN_CMD = 'mvn' - } - } - } - } - + // 使用Jenkins中配置的工具(自动安装) + tools { + maven 'Maven-3.9.6' // 使用您在Jenkins中配置的Maven名称 + // JDK使用容器中已有的,不需要额外配置 + } + stages { stage('Checkout') { steps { echo '🔄 开始检出代码...' @@ -71,33 +43,41 @@ pipeline { echo "📋 Git提交ID: ${env.GIT_COMMIT_SHORT}" } - } - - stage('环境检查') { + } stage('环境检查') { steps { echo '🔍 检查构建环境...' - sh ''' - echo "Java版本:" - java -version - echo "Maven版本:" - mvn -version - echo "Git版本:" - git --version - ''' + script { + sh ''' + echo "=== Java版本 ===" + java -version + + echo "=== Maven版本 ===" + mvn -version + + echo "=== Git版本 ===" + git --version + + echo "=== 工作目录 ===" + pwd && ls -la + ''' + + // 设置Maven命令 + env.MVN_CMD = 'mvn' + echo "✅ 构建环境检查完成,Maven命令: ${env.MVN_CMD}" + } } } - - stage('编译') { + stage('编译') { steps { echo '🔨 开始编译项目...' - sh "${env.MVN_CMD} clean compile -DskipTests=true" + sh "mvn clean compile -DskipTests=true" } } stage('单元测试') { steps { echo '🧪 运行单元测试...' - sh "${env.MVN_CMD} test" + sh "mvn test" } post { always { @@ -124,10 +104,9 @@ pipeline { stage('代码质量扫描') { steps { echo '🔍 运行SonarQube代码扫描...' - script { - try { + script { try { sh """ - ${env.MVN_CMD} sonar:sonar \ + mvn sonar:sonar \ -Dsonar.projectKey=${SONAR_PROJECT_KEY} \ -Dsonar.host.url=${SONAR_HOST_URL} \ -Dsonar.login=${SONAR_TOKEN} \ @@ -141,11 +120,10 @@ pipeline { } } } - - stage('打包') { + stage('打包') { steps { echo '📦 开始打包应用程序...' - sh "${env.MVN_CMD} package -DskipTests=true" + sh "mvn package -DskipTests=true" } post { success {