简体   繁体   English

Webpack找不到入口模块

[英]Webpack can't find Entry Module

I migrated from Webpack 1 to Webpack 2 and now when I run Webpack on my project I get this error: 我从Webpack 1迁移到Webpack 2,现在在项目上运行Webpack时出现以下错误:

ERROR in Entry module not found: Error: Can't resolve './src/app.js' in '/Users/user1/Documents/AAA/app'
resolve './src/app.js' in '/Users/user1/Documents/AAA/app'
 using description file: /Users/user1/Documents/AAA/package.json (relative path: ./app)
   Field 'browser' doesn't contain a valid alias configuration
  after using description file: /Users/user1/Documents/AAA/package.json (relative path: ./app)
    using description file: /Users/user1/Documents/AAA/package.json (relative path: ./app/src/app.js)
      as directory
        /Users/user1/Documents/AAA/app/src/app.js doesn't exist
     no extension
       Field 'browser' doesn't contain a valid alias configuration
        /Users/user1/Documents/AAA/app/src/app.js doesn't exist
     *
       Field 'browser' doesn't contain a valid alias configuration
        /Users/user1/Documents/AAA/app/src/app.js* doesn't exist
     .js
       Field 'browser' doesn't contain a valid alias configuration
        /Users/user1/Documents/AAA/app/src/app.js.js doesn't exist
     .jsx
       Field 'browser' doesn't contain a valid alias configuration
        /Users/user1/Documents/AAA/app/src/app.js.jsx doesn't exist
     .json
       Field 'browser' doesn't contain a valid alias configuration
        /Users/user1/Documents/AAA/app/src/app.js.json doesn't exist

My package.json is: 我的package.json是:

{
 "name": "AAA",
 "version": "1.0.0",
 "description": "",
 "main": "index.js",
 "scripts": {
   "test": "echo \"Error: no test specified\" && exit 1",
   "dev": "node ./node_modules/webpack-dev-server/bin/webpack-dev-server.js --hot --inline --history-api-fallback"
 },

 "devDependencies": {
   "babel-core": "^6.21.0",
   "babel-loader": "^6.2.10",
   "babel-preset-es2015": "^6.24.0",
   "babel-preset-react": "^6.16.0",
   "eslint": "^3.13.1",
   "eslint-config-airbnb": "^14.0.0",
   "eslint-plugin-import": "^2.2.0",
   "eslint-plugin-jsx-a11y": "^3.0.2",
   "eslint-plugin-react": "^6.9.0",
   "file-loader": "^0.9.0",
   "react-hot-loader": "^3.10.10",
   "react-router": "^3.0.2",
   "webpack": "^2.4.1",
   "webpack-dev-server": "^1.16.2"
 },
 "dependencies": {
   "react": "^15.5.4",
   "react-dom": "^15.5.4",
   "react-hot-loader": "^3.10.10"
 },
}

this is my webpack.config.js: 这是我的webpack.config.js:

const path = require('path');

module.exports = {
  context: __dirname + "/app",

  entry: {
    app: "./src/app.js",
    javascript: "./js/app.js",
    html: "./index.html",
  },

  output: {
    //output.path: "[name].js",
    path: __dirname + "/dist",
    filename: "[name].js"
  },

  resolve: {
    alias: { 'react/lib/ReactMount': 'react-dom/lib/ReactMount' },
    extensions: [ '*', '.js', '.jsx', '.json'],
    modules:[__dirname, './app/js', 'node_modules'],
  },

  module: {
    rules: [
      {
        test: /\.jsx?$/,
        include: [
          path.resolve(__dirname, "app")
        ],
        loaders: ["babel-loader"],
      },
      {
        test: /\.html$/,
        loader: ["file-loader?name=[name].[ext]"],
      }
    ],
  },
}

I'm confused on how Webpack 2 should be set up and it has given me some problems so it might just be that my webpack config file has errors. 我对应该如何设置Webpack 2感到困惑,它给了我一些问题,所以可能只是我的webpack配置文件有错误。 What is causing this error and how can I fix it? 是什么导致此错误,我该如何解决?

You configured context to be ./app/ . 您将context配置为./app/ Webpack resolves everything that is used in the config as if you were in the ./app/ directory. Webpack会解析配置中使用的所有内容,就像您位于./app/目录中一样。 As shown by the error, it looks for the file ./app/src/app.js , which doesn't exist. 如错误所示,它查找文件./app/src/app.js ,该文件不存在。

You either need to change / remove the context option (it defaults to the current directory) or you have to adjust the paths of the entry points. 您需要更改/删除context选项(默认为当前目录),或者必须调整入口点的路径。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM