开发者社区 > 云效DevOps > 正文

云效流水线node.js构建使用npm安装依赖包要花24分钟,用cnpm快,但是打包失败?

本人使用node.js构建前端项目,一开始使用的命令是:

cnpm install && npm run build:test

但是在打包这一步出错,信息如下:

[13:44:00] [1mModule build [1m[31mfailed[39m[22m[1m (from ./node_modules/_mini-css-extract-plugin@1.6.2@mini-css-extract-plugin/dist/loader.js):
[13:44:00] [eslint] [1m[31mFailed[39m[22m[1m to load plugin 'import' declared in '.eslintrc.js » eslint-config-standard': Cannot find module 'eslint-plugin-import'

项目使用了eslint-config-standard,在本地环境使用npm install安装,打包是没有问题的。

于是我将命令改成:

npm install && npm run build:test

奈何还是构建失败,报错原因是下载依赖404。我就提了工单问问工程师,给出的解决方案是使用如下命令:

rm -rf package-lock.json
npm install
npm run build:test

可以构建成功,但是在npm install安装依赖这一步花了24分钟,这时间也太长了,看日志随便一个依赖下载都得4s以上。
Snipaste_2024-03-18_15-48-46.png

我是勾选了优先使用缓存的,可能是第一次没有使用缓存,我又运行了一次,还是在安装依赖这一步花了24分钟。

求问各位有没有好的缓存使用方案,不使用cnpm,可以在第二次构建时使用本地缓存

展开
收起
游客f6reat6vnzr46 2024-03-18 15:57:15 48 0
1 条回答
写回答
取消 提交回答
  • 解决了,构建使用如下命令:

    npm config set registry=https://registry.npmmirror.com
    # 构建中优先使用缓存中
    npm install --prefer-offline --no-audit
    npm run build:test
    

    不使用cnpm,而是设置地址为淘宝镜像npm config set registry=https://registry.npmmirror.com

    2024-03-18 17:19:17
    赞同 展开评论 打赏

云效,企业级一站式研发协同平台,数十万企业都在用。支持公共云、专有云和混合云多种部署形态,通过云原生新技术和研发新模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,打造“双敏”组织,实现多倍效能提升。

热门讨论

热门文章

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载