uniapp error: cannot find module @rollup/rollup-win32-x64-msvc. npm has a bug如何解决?

在uniapp项目中运行时报错:“cannot find module @rollup/rollup-win32-x64-msvc”,查资料发现可能是npm的bug导致的。已经尝试过删除node_modules和package-lock.json后重新npm install,但问题依旧。请问具体该如何解决这个模块缺失的问题?是否需要手动安装特定版本的rollup?

2 回复

安装缺失模块:npm install @rollup/rollup-win32-x64-msvc。若无效,清除缓存重装:npm cache clean --force && npm install


这个错误通常是由于 npm 包依赖损坏或平台特定包缺失导致的。以下是几种解决方法:

1. 清理缓存并重新安装

# 删除node_modules和package-lock.json
rm -rf node_modules package-lock.json
# 清理npm缓存
npm cache clean --force
# 重新安装依赖
npm install

2. 使用 yarn 替代 npm

# 安装yarn
npm install -g yarn
# 使用yarn安装依赖
yarn install

3. 手动安装缺失的包

npm install @rollup/rollup-win32-x64-msvc --save-dev

4. 检查 package.json 配置 确保 rollup 相关依赖版本兼容,可以尝试固定版本:

{
  "devDependencies": {
    "@rollup/rollup-win32-x64-msvc": "^2.56.3"
  }
}

5. 使用 cnpm(国内用户)

npm install -g cnpm --registry=https://registry.npmmirror.com
cnpm install

6. 更新 npm 到最新版本

npm install -g npm@latest

建议按顺序尝试这些方法,通常方法1或2就能解决问题。如果问题持续存在,可能需要检查网络环境或考虑使用 Docker 环境进行开发。

回到顶部