npm执行build提示missing script: build 如何将含node-rsa的JS打包为单文件
问题解决方案
打包可行性说明
你当前的代码完全可以打包为单个独立JS文件,webpack会自动将你依赖的node-rsa库和业务代码合并输出,打包后的文件无需依赖原项目的node_modules目录即可运行。
missing script: build报错修复
该报错的根本原因是你将build命令错误配置到了dependencies字段下,npm执行自定义命令仅会读取scripts字段下的配置,按以下步骤修正即可:
- 修正package.json配置
- 删除
dependencies字段中无效的"build": "webpack a.js b.js"配置项 - 在
scripts字段中新增build命令,修改后的scripts字段如下:
"scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "webpack --mode production" }
- 安装webpack-cli依赖:webpack 5版本需要单独安装命令行工具才能执行打包命令,执行以下命令安装:
npm install webpack-cli --save-dev
- 修正webpack.config.js配置
原配置中output.path要求必须传入绝对路径,否则会触发路径错误,修改为以下配置:
const path = require('path'); module.exports = { entry: './a.js', output: { path: path.resolve(__dirname, 'build'), filename: 'bundle.js' } };
- 执行打包
运行npm run build,打包完成后会在项目根目录的build文件夹下生成单个bundle.js文件,直接执行node build/bundle.js即可正常运行代码。
内容的提问来源于stack exchange,提问作者Konstantin Petrov
相关产品推荐
相关产品推荐

