You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins流水线报错:'gradlew.bat'未识别,如何生成该文件?

解决Gradle Wrapper未生成gradlew.bat等脚本的问题

正确生成完整Gradle Wrapper的步骤

要生成包含gradlew.bat(Windows环境)和gradlew(UNIX类系统环境)的完整Wrapper文件,按以下操作执行:

  • 先确认本地已安装Gradle,且能通过gradle -v正常输出版本信息(确保环境变量配置正确)。
  • 进入项目根目录,执行对应命令:
    • 需要指定Gradle版本时:gradle wrapper --gradle-version <具体版本号>(例如gradle wrapper --gradle-version 7.6)
    • 无需指定版本则直接执行:gradle wrapper

执行完成后,项目根目录会生成四个关键文件/目录:

  • gradlew:供Linux/macOS使用的Shell脚本
  • gradlew.bat:供Windows使用的批处理脚本
  • gradle/wrapper/gradle-wrapper.jar
  • gradle/wrapper/gradle-wrapper.properties

常见问题排查

如果执行命令后仍缺少脚本文件,检查以下几点:

  1. Gradle版本过低:老版本Gradle的wrapper命令可能不会自动生成跨平台脚本,建议升级到7.x及以上的稳定版后重试。
  2. 权限不足:在UNIX类系统下执行命令时,确保当前用户拥有项目目录的读写权限,避免脚本生成失败。
  3. 执行环境受限:如果是在容器或受限环境中执行命令,可能存在文件系统限制,换本地正常环境重试。

Jenkins流水线适配建议

生成完Wrapper文件后,务必将gradlew、gradlew.bat以及整个gradle/wrapper目录提交到代码仓库。这样Jenkins拉取代码后,就能直接在对应环境执行脚本,无需在流水线中重复生成Wrapper。

示例脚本式流水线的构建阶段代码:

stage('Build Project') {
    steps {
        script {
            if (isUnix()) {
                sh './gradlew clean build'
            } else {
                bat 'gradlew.bat clean build'
            }
        }
    }
}

内容的提问来源于stack exchange,提问作者P.Brito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 00:02:25