14

当我 npm 启动我的 webpack-dev-server 时出现此错误:

ERROR in multi main
Module not found: Error: Cannot resolve 'file' or 'directory' /var/www/html/151208-DressingAphrodite/app in /var/www/html/151208-DressingAphrodite
 @ multi main

这是我的 webpack.config.js:

var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require ('html-webpack-plugin');

const PATHS = {
  app: path.join (__dirname, 'app'),
  build : path.join (__dirname, 'build')
};

module.exports = {
  entry : [
    'babel-polyfill',
    'webpack-dev-server/client?http://localhost:8080',
    PATHS.app
  ],
  output : {
      publicPath : '/',
      filename : 'dressingaphrodite.js',
      hash : true
  },
  debug : true,
  devServer : {
    contentBase : './app'
  },
  devtool : 'source-map',
  module : {
    loaders : [
      {
        test : /\.jsx?$/,
        include : PATHS.app,
        loader : 'babel-loader',
        query : {
          presets : ["es2015"]
        }
      },
      {
          test: /\.css$/,
          include: PATHS.app,
          loader: 'style!css'
      }
    ]
  },
  plugins : [
    new HtmlWebpackPlugin ({
      title : 'Dressing Aphrodite',
      filename : 'da.html'
    })
  ]
};
4

3 回答 3

8

好的,如果有人遇到此问题,您可以通过两种方法解决:

方法一:

1-在您的入口文件夹中添加一个名为 package.json 的文件(在您的情况下将其放在文件夹中"{project_dir}/app/package.json"

2- 在这个文件中写入任何 json 对象,例如:

{
  "name": "webpack why you do diss :("
}

方法二:

将您的入口文件更改为距项目主目录至少 2 级,例如:"{project_dir}/src/app"

说明:对于每个入口文件,webpack 将尝试找到一个名为 package.json 的文件以将其用于 webpack 配置,以防此入口文件是一个模块,当您将入口文件放在离项目主目录仅 1 级的位置时,webpack 将使用您的project packge.json 作为你的入口文件的配置文件,它会因为错过配置而失败。

于 2016-07-13T15:27:23.863 回答
2

您应该检查浏览器控制台。它提供了更详细的信息。

就我而言:

Uncaught Error: Cannot find module "./src/index"
at webpackMissingModule (webpack:///multi_main?:4)
at eval (webpack:///multi_main?:4)
at Object.<anonymous> (bundle.js:586)
at __webpack_require__ (bundle.js:556)
at bundle.js:579
at bundle.js:582

所以这是一个缺少(或拼写错误)的java脚本文件的错误。

于 2016-12-17T09:31:57.613 回答
0

我遇到了同样的问题。我在 github 中找到了答案Error : ERROR in Entry module not found: Error: Cannot resolve 'file' or 'directory'#981。但遗憾的是,在 webpack 1.15.12 中,--allow-incompatible-update已被删除。另外,我发现当设置条目类型为数组时,例如entry: [entry.js],webpack 会运行,但是会抛出另一个错误:(

我希望它可以帮助你,希望。

于 2016-01-12T11:46:38.420 回答