Ошибка Webpack - не удается разрешить файл или каталог

Я получаю эту ошибку, когда я 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'
    })
  ]
};

3 ответа

Хорошо, если кто-то сталкивается с этой проблемой, вы можете решить ее двумя способами:

Способ 1:

1 - добавьте файл с именем package.json в папку ввода (в вашем случае поместите его в папку "{project_dir}/app/package.json")

2- внутри этого файла напишите любой объект json, например:

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

Способ 2:

Измените ваши входные файлы так, чтобы они находились как минимум на 2 уровне от вашего домашнего каталога проекта, например: "{project_dir}/src/app"

Объяснение: для каждого входного файла webpack попытается найти файл с именем package.json, чтобы использовать его для конфигурации webpack, если этот входной файл является модулем, когда вы помещаете свой входной файл только на 1 уровень от вашего проекта. проект packge.json как файл конфигурации для вашего файла ввода, и он потерпит неудачу из-за ошибки конфигурации.

Вы должны проверить консоль браузера. Он предоставляет более подробную информацию.

В моем случае:

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.

Та же проблема, с которой я столкнулся. Я нашел ответ в github Ошибка: ОШИБКА в модуле ввода не найдена: Ошибка: Не удается разрешить "файл" или "каталог" # 981. Но, к сожалению, в веб-пакете 1.15.12 --allow-incompatible-update был удален. Кроме того, я обнаружил, когда установлен тип записи массив, такой как entry: [entry.js], webpack запустится, но выкинет еще одну ошибку:(

Надеюсь, это поможет вам.

Другие вопросы по тегам