前端 build 报错  ERROR  Failed to replace env in config: ${version}

51 阅读1分钟

zhen-yao-n5GhsShVQ1g-unsplash.jpg

Photo by Zhen Yao on Unsplash

报错

ERROR  Failed to replace env in config: ${version}
For help, run: pnpm help run
ELIFECYCLE  Command failed with exit code 1.

环境

  • nodejs 16 | 18
  • pnpm 8 | 9

原因

原来是我的 .npmrc 加多了一个变量 CYPRESS_DOWNLOAD_PATH_TEMPLATE

registry=https://registry.npmmirror.com/
disturl=https://registry.npmmirror.com/-/binary/node/
electron_mirror=https://registry.npmmirror.com/-/binary/electron/
sass_binary_site=https://registry.npmmirror.com/-/binary/node-sass/
fse_binary_host_mirror=https://registry.npmmirror.com/-/binary/node-sass/fsevents/
puppeteer_download_host=https://registry.npmmirror.com/-/binary/
CYPRESS_DOWNLOAD_PATH_TEMPLATE=https://registry.npmmirror.com/-/binary/cypress/\${version}/\${platform}-\${arch}/cypress.zip

我这个项目没用到 cypress 但是我却加了 CYPRESS_DOWNLOAD_PATH_TEMPLATE 变量,导致了这个问题。

解决方案

没用到的环境变量,删除了就好了。这里把 CYPRESS_DOWNLOAD_PATH_TEMPLATE 删除即可。

正确的 .npmrc 配置如下:

registry=https://registry.npmmirror.com/
disturl=https://registry.npmmirror.com/-/binary/node/
electron_mirror=https://registry.npmmirror.com/-/binary/electron/
sass_binary_site=https://registry.npmmirror.com/-/binary/node-sass/
fse_binary_host_mirror=https://registry.npmmirror.com/-/binary/node-sass/fsevents/
puppeteer_download_host=https://registry.npmmirror.com/-/binary/