Webpack构建报错:无法解析'./src'入口模块问题咨询
解决Webpack "Entry module not found: Can't resolve './src'" 报错
嘿,我来帮你搞定这个Webpack的报错问题~ 这个错误核心是Webpack找不到你指定的入口模块,咱一步步排查可能的原因:
1. 检查webpack.config.js的context配置
你提到配置里有context: _...,这里大概率是路径设置出了问题。context是Webpack解析所有模块路径的基础目录,必须指向项目根目录才能正确找到src文件夹。把它改成绝对路径就稳妥了:
context: path.resolve(__dirname),
__dirname是Node.js提供的变量,代表当前配置文件所在的目录(也就是你的项目根目录),结合path.resolve能确保路径绝对正确。
2. 明确配置entry入口
Webpack默认会找./src/index.js作为入口,如果你的src文件夹里的入口文件不是这个名字(比如叫app.js),或者你没明确配置entry,就会触发这个报错。两种解决方式:
- 把src里的入口文件改名为
index.js; - 或者在配置里手动指定入口路径:
entry: './src/app.js', // 替换成你的实际入口文件名 // 用绝对路径更保险,避免相对路径坑 entry: path.resolve(__dirname, 'src', 'app.js'),
3. 确认配置文件名正确
你写的是webpack.config,但Webpack默认识别的配置文件名是webpack.config.js,少了.js后缀的话,Webpack会忽略这个配置,用默认规则去找入口,自然找不到。赶紧把文件名改成webpack.config.js试试。
4. 检查src文件夹的位置和拼写
最后确认下:src文件夹确实在项目根目录下,拼写没有错误(比如有没有写成Src或者src_?Linux/macOS系统是区分大小写的,Windows虽然不区分,但统一小写更稳妥)。
修正后的完整配置示例
给你一个参考的正确配置,你可以根据自己的项目调整:
const debug = process.env.NODE_ENV !== "production"; const webpack = require('webpack'); const path = require('path'); module.exports = { context: path.resolve(__dirname), entry: './src/index.js', // 这里替换成你的实际入口文件 output: { path: path.resolve(__dirname, 'dist'), filename: 'bundle.js' }, // 其他你需要的配置(比如loader、plugin)... };
内容的提问来源于stack exchange,提问作者Alessandro Staffolani




