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

Spring Boot-Gradle集成Node.js配置报错:无法找到指定Node版本

解决Gradle nodeSetup任务找不到Node.js版本的问题

先看你报错信息里的关键问题:

Execution failed for task ':nodeSetup'.
> Could not resolve all files for configuration ':detachedConfiguration55'.
> Could not find org.nodejs:node:v12.16.1.
Searched in the following locations:
- https://nodejs.org/dist/vv12.16.1/ivy.xml

URL里出现了vv12.16.1,这说明com.moowork.node插件在拼接下载路径时错误地重复添加了版本前缀v。结合你的本地环境和配置,给你几个可行的解决方案:

方案1:直接使用本地已安装的Node.js

既然你本地已经装好v12.16.1的Node.js,完全可以跳过插件的自动下载流程,修改node配置块:

node {
    version = '12.16.1'
    download = false  // 改成false,强制使用本地Node环境
    workDir = file("${project.projectDir}/src/main/reactjs/nodejs")
    npmWorkDir = file("${project.projectDir}/src/main/reactjs/npm")
    nodeModulesDir = file("${project.projectDir}/src/main/reactjs")
}

这样插件会直接调用你本地的node和npm,不会再触发错误的下载请求,应该能最快解决问题。

方案2:修复插件的版本路径拼接问题

如果你确实需要插件自动下载Node.js,可以尝试以下两种调整:

  • 升级com.moowork.node插件版本,旧版1.3.1可能存在路径拼接的bug,试试升级到1.4.0:
    plugins {
        // 保留其他插件配置
        id "com.moowork.node" version "1.4.0"
    }
    
  • 手动指定Node的下载URL模板,避免插件自动拼接错误:
    node {
        version = '12.16.1'
        download = true
        distBaseUrl = "https://nodejs.org/dist/v${version}/"
        // 保留其他配置项
    }
    

方案3:确保Gradle能访问本地Node环境

如果方案1没生效,检查Gradle是否能找到本地Node:

  1. 终端执行which node获取本地Node的绝对路径
  2. 在Gradle配置里手动指定Node路径:
    node {
        nodeExec = file("/usr/local/bin/node")  // 替换成你的实际路径
        // 保留其他配置项
    }
    

推荐先尝试方案1,它最直接利用你已有的本地环境,能快速绕过下载报错的问题。

内容的提问来源于stack exchange,提问作者Peter Toth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 20:22:44