14

这是我的生产 webpack 配置。标题中的两个引号分别指的是 webpack2 和 webpack。两者都为我挂起类似的错误。

这是我触发构建的命令

set NODE_ENV=production && webpack --config config/webpack.config.prod.js --progress --display-error-details

我错过了什么?

这是运行后npm run pack与我的生产 webpack 构建相关的输出:

$ npm run pack

> somedir@ pack C:\somedir
> set NODE_ENV=production && webpack --config config/webpack.config.prod.js --progress --display-error-details
                           95% emitting
4

13 回答 13

9

所以我想通了。事实证明,我在输出路径中包含了保留字符。我已经在 github 上打开了一个问题

当在 output.path 中使用无效或保留字符时,webpack 将挂起并且没有输出。使用 --progress 标志运行将显示它挂在 95% emit(ting) 上(后缀取决于 webpack 版本)。

于 2016-08-29T12:23:14.553 回答
4

在我的情况下(Windows 环境和 laravel-mix)路径中没有任何不正确的字符,因为即使是简单的配置也不起作用。只是 webpack (webpack@3.12.0) 自己做了一些愚蠢的事情,问题已经使用publicPath如下选项解决:

mix.options({
    publicPath: ('./')
});

根据文档

允许您为应用程序中的所有资产指定基本路径

或者,您可以使用:

mix.setPublicPath('./');
于 2018-08-31T19:40:54.160 回答
2

我使用 laravel-mix 作为独立的. 这是我的配置:

let mix = require('laravel-mix');

mix.setPublicPath('./')
   .js('resources/js/app.js', 'js')
   .sass('resources/sass/app.scss', 'css');

这对我有用。

于 2018-06-16T07:29:38.087 回答
2

我通过升级修复webpack@4.41.2

于 2019-11-06T12:37:26.390 回答
1

就我而言,我尝试使用 Angular 4、Webpack 3、AOT 和延迟加载。
使用@ngtools/webpackAotPlugin使它冻结在 95%。

修复的是:
1)。安装node-sassnpm install node-sass --no-bin-links因为它没有自动安装sass-loader
2)。为 SCSS/CSS 文件添加这些加载器(甚至在节点模块中):

        {
            test: /\.css$/,
            use: [
                'style-loader',
                'css-loader'
            ]
        },
        {
            test: /\.scss$/,
            use: [
                'raw-loader',
                'sass-loader'
            ]
        }
于 2017-11-15T16:30:15.500 回答
1
npm rebuild node-sass

由我解决。

于 2017-12-08T13:01:57.003 回答
1

如果您的导入无效,也会发生此错误。从未编译的其他文件导入引用。

于 2019-01-14T06:08:43.183 回答
1

indexTransform如果您使用属性并且函数抛出错误,也会发生这种情况。要处理此问题,您可以将函数包装在 try/catch 中;

module.exports = (targetOptions, indexHtml) => {
  try {
    ...
  } catch (error) {
    console.error(error)
    process.exit(1) // Kills webpack
  }
}
于 2020-12-09T20:39:09.270 回答
0

运行ng build并且node --inspect node_modules/webpack/bin/webpack.js应该给出问题路径的输出

于 2020-02-20T18:32:25.597 回答
0

复制 index.html 时我有missclick(从 angular 文件夹中剪切此文件)。将它们复制回来后问题就消失了。

于 2020-06-19T13:23:10.433 回答
0

当我建立一个项目时,我在 Angular 中遇到了同样的问题。问题是我错误地将 index.html 文件放在了文件./src夹之外。

于 2020-11-08T20:13:27.583 回答
0

在我的情况下,它与 output.path 中定义的目录有关。删除它的内容(具有不同捆绑包的不同文件夹)后,一切都恢复了。

于 2021-08-25T01:50:04.030 回答
0

我有同样的问题。我错过了>一个<div>.

Webpack (mix) 会挂起,而不仅仅是无法编译,我不知道为什么。希望这可以为某人节省几个小时进入错误的兔子洞。

于 2021-10-20T19:55:18.373 回答