【问题标题】:Webpack configuration file found but no entry configured找到 Webpack 配置文件但没有配置条目
【发布时间】:2017-11-05 13:21:26
【问题描述】:

我正在尝试使用 webpack-dev-server 为我的个人项目组织一个 webpack 2 模板并使用 npm 命令运行它,但是我收到了这个错误:

Configuration file found but no entry configured.

这很奇怪,因为定义了条目并且我测试了解析的路由,这很好,所以这是我的 webpack 配置、运行它的命令和配置加载器的文件:

webpack.config.dev.js

const path       = require('path');
const fs         = require('fs');
const configs    = require('./dev-wpk-conf');
const HtmlPlugin = require('html-webpack-plugin');
const Dotenv     = require('dotenv-webpack');
const webpack    = require('webpack');
const dirPath    = fs.realpathSync(process.cwd());

const config = {
  entry: {
    bundle: path.resolve(dirPath, '../src/index.js'),
    vendor: configs.vendor
  },
  output: {
    path: path.resolve(dirPath, '../dist'),
    filename: '[name].[hash].js'
  },
  devServer: {
    port: 3030
  },
  module: {
    rules: [
      configs.jsonLoader,
      configs.babelLoader,
      configs.imgLoader,
      configs.sassLoader
    ]
  },
  plugins: [
    new webpack.optimize.CommonsChunkPlugin({ names: ['vendor', 'manifest'] }),
    new HtmlPlugin({ template: './src/index.html' }),
    new Dotenv()
  ]
}

dev-wpk-conf.js(加载器):

const vendor = [
  'react',
  'react-dom',
  'react-redux',
  'react-router',
  'redux',
  'redux-form',
  'redux-thunk',
  'redux-devtools-extension'
];

const jsonLoader = {
  test: /\.json$/,
  loader: 'json-loader'
};

const babelLoader = {
  test: /\.js$/,
  loader: 'babel-loader',
  exclude: /node_modules/,
  options: {
    presets: ['babel-preset-env', 'react']
  }
};

const imgLoader = {
  test: /\.(jpe?g|png|gif|svg)$/,
  use: [
    { loader: 'url-loader', options: { limit: 40000 } },
    'image-webpack-loader'
  ]
};

const sassLoader = {
  test: /\.(scss|sass)$/,
  use: [
    { loader: 'css-loader' },
    { loader: 'sass-loader' }
  ],
  fallback: 'style-loader'
};

module.exports = {
  vendor,
  jsonLoader,
  babelLoader,
  imgLoader,
  sassLoader
};

NPM 脚本:

"clean": "rimraf dist",
"serve": "yarn clean && webpack-dev-server --config ./config/webpack.config.dev.js"

文件夹结构:

config/
    dev-wpk-conf.js
    prod-wpk-conf.js
    webpack.config.dev.js
    webpack.config.prod.js
node_modules/
    ...
src/
    index.js
    // the app code
package.json
.env
//rc files

那么,为什么我会收到这个错误?我不是专家,但条目已定义并且解析的路径(再次)是正确的。

有什么提示吗?

【问题讨论】:

  • 试试 dis "serve": "yarn clean && webpack --config ./config/webpack.config.dev.js"
  • 使用该命令我得到:Error: 'output.filename' is required, either in config file or as --output-filename
  • 你的 webpack.config.dev.js 中没有定义 module.exports = config

标签: node.js webpack webpack-dev-server


【解决方案1】:

你必须在 webpack.config.dev.js 中导出你的 webpack 配置。

添加此行添加配置文件的末尾。

module.exports = config;

【讨论】:

    【解决方案2】:

    您可以将 webpack 用作可执行程序,或用作节点模块。在您的情况下,您将其用作程序,因此您必须像已经提到的那样导出配置对象

    module.exports = config;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-20
      • 2013-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-11
      • 1970-01-01
      • 2019-08-05
      相关资源
      最近更新 更多