包裹错误 - 找不到模块 @parcel\fs-search\fs-search.win32-x64-msvc.node

Amm*_*yed 4 javascript compiler-errors node.js parceljs windows-11

我最近将 Windows 从 Windows 10 更新到了 11。

\n

** 更新 ** 我再次重新安装了 Windows 10,但收到了同样的错误

\n

当我运行yarn start或npm start时,我收到以下错误

\n
\xce\xbb yarn start\nyarn run v1.22.15\n$ parcel index.html\nError: The specified module could not be found.\n\\\\?\\C:\\Users\\Ammar Home\\Desktop\\testing\\node_modules\\@parcel\\fs-search\\fs-search.win32-x64-msvc.node\n    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1144:18)\n    at Module.load (internal/modules/cjs/loader.js:950:32)\n    at Function.Module._load (internal/modules/cjs/loader.js:790:12)\n    at Module.require (internal/modules/cjs/loader.js:974:19)\n    at require (C:\\Users\\Ammar Home\\Desktop\\testing\\node_modules\\v8-compile-cache\\v8-compile-cache.js:159:20)\n    at Object.<anonymous> (C:\\Users\\Ammar Home\\Desktop\\testing\\node_modules\\@parcel\\fs-search\\index.js:19:20)\n    at Module._compile (C:\\Users\\Ammar Home\\Desktop\\testing\\node_modules\\v8-compile-cache\\v8-compile-cache.js:192:30)\n    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)\n    at Module.load (internal/modules/cjs/loader.js:950:32)\n    at Function.Module._load (internal/modules/cjs/loader.js:790:12) {\n  code: 'ERR_DLOPEN_FAILED'\n}\nerror Command failed with exit code 1.\ninfo Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.\n
Run Code Online (Sandbox Code Playgroud)\n

我的设置非常简单,这是详细信息

\n

package.json 文件

\n
{\n  "name": "testing",\n  "version": "1.0.0",\n  "license": "MIT",\n  "scripts": {\n    "start": "parcel index.html",\n    "build": "parcel build"\n  },\n  "devDependencies": {\n    "parcel": "^2.0.0"\n  }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

我的 index.html 或 javascript 文件中没有什么特别的,

\n

html文件

\n
<!DOCTYPE html>\n<html lang="en">\n\n<head>\n  <meta charset="UTF-8" />\n  <meta http-equiv="X-UA-Compatible" content="IE=edge" />\n  <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n  <title>Document</title>\n</head>\n\n<body>\n\n  <script src="./index.js" type="module"></script>\n</body>\n\n</html>\n
Run Code Online (Sandbox Code Playgroud)\n

JavaScript 文件

\n
console.log("Hello world");\n
Run Code Online (Sandbox Code Playgroud)\n

我的环境

\n
Parcel  2\nNode    v14.18.1\nnpm/Yarn    \nOperating System    Windows 11 Pro\nVersion 21H2\nOS build 22000.258\nexperience Windows Feature Experience Pack 1000.22000.258.0\n
Run Code Online (Sandbox Code Playgroud)\n

实验室规格

\n
Processor   Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz   1.80 GHz\nInstalled RAM   8.00 GB (7.88 GB usable)\nSystem type 64-bit operating system, x64-based processor\n\n
Run Code Online (Sandbox Code Playgroud)\n

奇怪的是,当我查看错误中的指定文件夹时,我发现模块“fs-search.win32-x64-msvc.node”,它已经存在于以下目录下

\n

node_moduels/@parcel/fs-search /fs-search.win32-x64-msvc.node

\n

它已经存在,但是错误声称找不到它!

\n

我已经多次删除了node_modules并再次重新安装了parcel,但是出现了同样的错误,\n我不确定是什么原因导致了这个问题,\n任何人都可以提供帮助吗?

\n

调试日志

\n
0 info it worked if it ends with ok\n1 verbose cli [\n1 verbose cli   'C:\\\\Program Files\\\\nodejs\\\\node.exe',\n1 verbose cli   'C:\\\\Program Files\\\\nodejs\\\\node_modules\\\\npm\\\\bin\\\\npm-cli.js',\n1 verbose cli   'start'\n1 verbose cli ]\n2 info using npm@6.14.15\n3 info using node@v14.18.1\n4 verbose run-script [ 'prestart', 'start', 'poststart' ]\n5 info lifecycle testing@1.0.0~prestart: testing@1.0.0\n6 info lifecycle testing@1.0.0~start: testing@1.0.0\n7 verbose lifecycle testing@1.0.0~start: unsafe-perm in lifecycle true\n8 verbose lifecycle testing@1.0.0~start: PATH: C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\npm-lifecycle\\node-gyp-bin;C:\\Users\\Ammar Home\\Desktop\\testing\\node_modules\\.bin;C:\\Users\\Ammar Home\\cmder\\vendor\\conemu-maximus5\\ConEmu\\Scripts;C:\\Users\\Ammar Home\\cmder\\vendor\\conemu-maximus5;C:\\Users\\Ammar Home\\cmder\\vendor\\conemu-maximus5\\ConEmu;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\;C:\\WINDOWS\\System32\\OpenSSH\\;C:\\Program Files\\Git\\cmd;C:\\ProgramData\\chocolatey\\bin;C:\\Program Files\\nodejs\\;C:\\Users\\Ammar Home\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\Ammar Home\\AppData\\Local\\Programs\\Microsoft VS Code\\bin;C:\\Users\\Ammar Home\\AppData\\Roaming\\npm;C:\\Program Files\\Git\\mingw64\\bin;C:\\Program Files\\Git\\usr\\bin;C:\\Users\\Ammar Home\\cmder\\vendor\\bin;C:\\Users\\Ammar Home\\cmder\n9 verbose lifecycle testing@1.0.0~start: CWD: C:\\Users\\Ammar Home\\Desktop\\testing\n10 silly lifecycle testing@1.0.0~start: Args: [ '/d /s /c', 'parcel index.html' ]\n11 silly lifecycle testing@1.0.0~start: Returned: code: 1  signal: null\n12 info lifecycle testing@1.0.0~start: Failed to exec start script\n13 verbose stack Error: testing@1.0.0 start: `parcel index.html`\n13 verbose stack Exit status 1\n13 verbose stack     at EventEmitter.<anonymous> (C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\npm-lifecycle\\index.js:332:16)\n13 verbose stack     at EventEmitter.emit (events.js:400:28)\n13 verbose stack     at ChildProcess.<anonymous> (C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\npm-lifecycle\\lib\\spawn.js:55:14)\n13 verbose stack     at ChildProcess.emit (events.js:400:28)\n13 verbose stack     at maybeClose (internal/child_process.js:1058:16)\n13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:293:5)\n14 verbose pkgid testing@1.0.0\n15 verbose cwd C:\\Users\\Ammar Home\\Desktop\\testing\n16 verbose Windows_NT 10.0.22000\n17 verbose argv "C:\\\\Program Files\\\\nodejs\\\\node.exe" "C:\\\\Program Files\\\\nodejs\\\\node_modules\\\\npm\\\\bin\\\\npm-cli.js" "start"\n18 verbose node v14.18.1\n19 verbose npm  v6.14.15\n20 error code ELIFECYCLE\n21 error errno 1\n22 error testing@1.0.0 start: `parcel index.html`\n22 error Exit status 1\n23 error Failed at the testing@1.0.0 start script.\n23 error This is probably not a problem with npm. There is likely additional logging output above.\n24 verbose exit [ 1, true ]\n
Run Code Online (Sandbox Code Playgroud)\n

Amm*_*yed 5

该问题是由于计算机上缺少库引起的。fs-search 需要 Microsoft Visual C++ 2015 Redistributable (x64)。

您可以在此处下载 -> https://aka.ms/vs/17/release/vc_redist.x64.exe

我从 github issues on Parcel 中得到了答案

https://github.com/parcel-bundler/parcel/issues/7104

谢谢你,