React项目Webpack编译失败:Source Map解析URL不支持错误
报错信息:
Failed to parse source map: 'webpack:///../../src/chains/index.ts' URL is not supported
Failed to parse source map: 'webpack:///../../src/eips/index.ts' URL is not supported
Failed to parse source map: 'webpack:///../../src/hardforks/index.ts' URL is not supported
Failed to parse source map: 'webpack:///../src.ts/_version.ts' URL is not supported
Failed to parse source map: 'webpack:///../src.ts/abi-coder.ts' URL is not supported
Failed to parse source map: 'webpack:///../src.ts/addresses.ts' URL is not supported
Failed to parse source map: 'webpack:///../src.ts/bignumber.ts' URL is not supported
解决方案:
禁用Source Map生成
若使用Create React App,在项目根目录的.env文件中添加:GENERATE_SOURCEMAP=false手动配置Webpack时,修改
webpack.config.js中的devtool选项:module.exports = { devtool: false // 完全禁用source map生成 // 也可改为兼容选项,比如 'source-map' }修正依赖包的Source Map路径
这类报错多由第三方Web3工具包(如ethers.js)发布时Source Map路径配置错误导致,可通过Webpack别名映射修正:const path = require('path'); module.exports = { resolve: { alias: { // 替换[包名]为实际报错的依赖包名称(如ethers) '../src.ts': path.resolve(__dirname, 'node_modules/[包名]/src') } } }更新或替换有问题的依赖
检查package.json中相关Web3类依赖的版本,升级到最新稳定版,或降级至已知无此问题的版本;若问题持续,可考虑替换为功能相近的替代包。忽略Source Map解析警告
若不影响项目运行,可在Webpack配置中过滤这类警告:module.exports = { stats: { warningsFilter: [/Failed to parse source map/] } }
内容的提问来源于stack exchange,提问作者blockbazzarsocials last

