记录vite打包时的错误:Error: Cannot find module @rollup/rollup-linux-x64-gnu

发布于:2024-12-07 ⋅ 阅读:(104) ⋅ 点赞:(0)

vue3+vite项目,在windows环境开发时没有出现打包问题。
但是在Linux系统中打包报错,找不到依赖rollup/rollup-linux-x64-gnu.
报错信息如下:

/PunchCard/Frontend-dev/node_modules/rollup/dist/native.js:63
                throw new Error(
                      ^

Error: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.
    at requireWithFriendlyError (/PunchCard/Frontend-dev/node_modules/rollup/dist/native.js:63:9)
    at Object.<anonymous> (/PunchCard/Frontend-dev/node_modules/rollup/dist/native.js:72:76)
    ... 3 lines matching cause stack trace ...
    at Module._load (node:internal/modules/cjs/loader:1019:12)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:203:29)
    at ModuleJob.run (node:internal/modules/esm/module_job:195:25)
    at async ModuleLoader.import (node:internal/modules/esm/loader:337:24) {
  [cause]: Error: Cannot find module '@rollup/rollup-linux-x64-gnu'
  Require stack:
  - /PunchCard/Frontend-dev/node_modules/rollup/dist/native.js
      at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
      at Module._load (node:internal/modules/cjs/loader:981:27)
      at Module.require (node:internal/modules/cjs/loader:1231:19)
      at require (node:internal/modules/helpers:177:18)
      at requireWithFriendlyError (/PunchCard/Frontend-dev/node_modules/rollup/dist/native.js:45:10)
      at Object.<anonymous> (/PunchCard/Frontend-dev/node_modules/rollup/dist/native.js:72:76)
      at Module._compile (node:internal/modules/cjs/loader:1364:14)
      at Module._extensions..js (node:internal/modules/cjs/loader:1422:10)
      at Module.load (node:internal/modules/cjs/loader:1203:32)
      at Module._load (node:internal/modules/cjs/loader:1019:12) {
    code: 'MODULE_NOT_FOUND',
    requireStack: [
      '/PunchCard/Frontend-dev/node_modules/rollup/dist/native.js'
    ]
  }
}

网上试了好多方法都不管用。加了下面这个配置就解决问题了。在package.json中加入以下配置项:

  "optionalDependencies": {
    "@rollup/rollup-linux-x64-gnu": "*"
  }

问题解决