Ошибка 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 запустится, но выкинет еще одну ошибку:(
Надеюсь, это поможет вам.