Rollup构建报错:无法找到node:process模块求解决方案
解决Rollup构建时找不到
node:process模块的问题 1. 先确认Node.js版本
node:前缀的模块导入是Node.js v16.0.0之后才支持的语法,先检查你当前的Node版本:
node -v
如果版本低于v16,直接升级到LTS版本(比如v18或v20)——低版本根本不识别这个语法,换版本也得换对。
2. 给Rollup配置Node模块解析
Node版本达标但还是报错的话,得让Rollup能正确识别node:前缀的模块,用@rollup/plugin-node-resolve插件处理:
- 没装的话先安装:
npm install @rollup/plugin-node-resolve --save-dev
- 在
rollup.config.js里添加配置:
import resolve from '@rollup/plugin-node-resolve'; export default { // 你的其他配置项 plugins: [ resolve({ preferBuiltins: true, modulesOnly: true, // 开启该配置让插件识别node:前缀模块 }), ], };
3. 替换node:process引用
如果是你自己的代码或依赖里写了node:process,直接换成process即可——Node环境里process本身就是全局可用的。要是批量替换嫌麻烦,用rollup-plugin-replace工具:
- 安装插件:
npm install rollup-plugin-replace --save-dev
- 在Rollup配置中添加替换规则:
import replace from 'rollup-plugin-replace'; export default { // 其他配置项 plugins: [ replace({ 'node:process': 'process', delimiters: ['', ''], }), ], };
4. 排查第三方依赖问题
如果是某个第三方依赖里用了node:process导致报错:
- 先升级该依赖到最新版,看作者是否修复了兼容问题;
- 升级不了的话,用
patch-package给依赖打补丁,把里面的node:process替换成process即可。
5. 升级Rollup到最新稳定版
老版本的Rollup对node:前缀的支持可能存在bug,直接升级到最新版:
npm install rollup --save-dev
内容的提问来源于stack exchange,提问作者Muzamil Abbas
相关产品推荐
相关产品推荐

