首次使用Parcel运行项目遇模块缺失错误,寻求解决方法
Parcel运行报错:找不到
./artifacts/index.win32-ia32-msvc.node模块 错误详情
运行命令 npx parcel .\app\index.html 时触发以下错误:
Error: Cannot find module './artifacts/index.win32-ia32-msvc.node' Require stack: - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\source-map\parcel_sourcemap_node\index.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\source-map\dist\node.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\utils\lib\index.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\core\lib\public\Config.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\core\lib\utils.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\core\lib\public\Environment.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\core\lib\public\Asset.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\core\lib\Parcel.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\core\lib\index.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\parcel\lib\cli.js - C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\parcel\lib\bin.js at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15) at Module._load (node:internal/modules/cjs/loader:920:27) at Module.require (node:internal/modules/cjs/loader:1141:19) at require (C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\v8-compile-cache\v8-compile-cache.js:159:20) at Object.<anonymous> (C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\@parcel\source-map\parcel_sourcemap_node\index.js:15:18) at Module._compile (C:\Users\Lenovo\Desktop\first-typescript-project\node_modules\v8-compile-cache\v8-compile-cache.js:192:30) at Module._extensions..js (node:internal/modules/cjs/loader:1308:10) at Module.load (node:internal/modules/cjs/loader:1117:32) at Module._load (node:internal/modules/cjs/loader:958:12) at Module.require (node:internal/modules/cjs/loader:1141:19) { code: 'MODULE_NOT_FOUND', requireStack: [ 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\source-map\\parcel_sourcemap_node\\index.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\source-map\\dist\\node.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\utils\\lib\\index.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\core\\lib\\public\\Config.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\core\\lib\\utils.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\core\\lib\\public\\Environment.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\core\\lib\\public\\Asset.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\core\\lib\\Parcel.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\@parcel\\core\\lib\\index.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\parcel\\lib\\cli.js', 'C:\\Users\\Lenovo\\Desktop\\first-typescript-project\\node_modules\\parcel\\lib\\bin.js' ] }
项目环境
目录结构
项目根目录包含:
- app文件夹(内含index.html、index.ts、styles.css)
- node_modules文件夹
- package.json
- package-lock.json
- tsconfig.json
package.json内容
{ "name": "first-typescript-project", "version": "1.0.0", "description": "Making some experiments", "main": "app/index.html", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "devDependencies": { "cssnano": "^6.0.0", "parcel": "^2.8.3", "postcss": "^8.4.21", "typescript": "^4.9.5" } }
已尝试的无效方案
- 重新安装Parcel
- 安装Microsoft Visual C++ 2015-2022 Redistributable (x64)并重启电脑
- 删除node_modules文件夹、package-lock.json文件后重新执行
npm install - 将app文件夹迁移至新目录并从头搭建项目
解决建议
检查Node.js架构与系统匹配度
错误里的win32-ia32说明Parcel在尝试加载32位模块,若你是64位系统,可能Node.js装成了32位。打开命令行输入node -p process.arch,如果输出ia32,卸载32位Node.js,重装64位版本后再执行npm install。手动安装对应架构的@parcel/source-map包
进入项目根目录执行:npm install @parcel/source-map-win32-x64-msvc --save-dev强制安装64位预编译模块,覆盖错误的依赖引用。
降级Parcel版本
当前使用的Parcel 2.8.3可能存在架构兼容问题,尝试降级到2.8.2版本:npm uninstall parcel npm install parcel@2.8.2 --save-dev之后重新运行打包命令。
清理npm缓存后重装依赖
执行以下命令彻底清理缓存:npm cache clean --force rm -rf node_modules package-lock.json npm install
内容的提问来源于stack exchange,提问作者Aogava
相关产品推荐
相关产品推荐

