From 053ca3607a6e66201e4a4ad56f8f38111361cb03 Mon Sep 17 00:00:00 2001 From: Home Date: Sun, 29 Mar 2026 02:55:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4jenkins=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=8C=96=E6=B5=81=E6=B0=B4=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Jenkinsfile | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/Jenkinsfile b/Jenkinsfile index 0e7b75bd..3d370044 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -11,6 +11,32 @@ pipeline { ANDROID_SDK = '/opt/android-sdk' // 安卓 SDK 路径 } stages { + stage('读取 manifest 版本号 (Node原生解析·零依赖)') { + steps { + script { + // ✅ 用 Node 读取,100% 稳定,不用装任何工具! + VERSION_NAME = sh( + script: "node -p \"require('./src/manifest.json').versionName\"", + returnStdout: true + ).trim() + + VERSION_CODE = sh( + script: "node -p \"require('./src/manifest.json').versionCode\"", + returnStdout: true + ).trim() + + echo "=====================================" + echo " 版本名称:${VERSION_NAME}" + echo " 版本号:${VERSION_CODE}" + echo "=====================================" + +// // 自动替换到 Android build.gradle +// def buildFile = "Android/simpleDemo/build.gradle" +// sh "sed -i \"s/versionName \\".*\\"/versionName \\"${VERSION_NAME}\\"/\" ${buildFile}" +// sh "sed -i \"s/versionCode [0-9]*/versionCode ${VERSION_CODE}/\" ${buildFile}" + } + } + } stage('打印环境变量') { steps { echo "使用的 UNIAPP_APP_ID:${env.UNIAPP_APP_ID}"