Webpack 不创建输出文件(不使用 webpack-dev-server)

Posted

技术标签:

【中文标题】Webpack 不创建输出文件(不使用 webpack-dev-server)【英文标题】:Webpack does not create output file (not using webpack-dev-server) 【发布时间】:2017-02-10 00:41:39 【问题描述】:

我正在使用 webpack(不是开发服务器,我知道它不会输出文件),它没有创建 dist 文件夹或输出文件。

我尝试通过webpack(全局安装)和npm run build 直接运行它,后者使用本地安装的webpack。都不行。

这是我的配置:

const path = require('path');

module.exports = 
  entry: 
    app: './src/entry.js',
  ,
  output: 
    path: path.join('/dist'),
    filename: '[name].bundle.js',
  ,
  module: 
    loaders: [
      
        test: /\.tsx?$/,
        loader: 'ts-loader',
      ,
      
        test: /\.js$/,
        exclude: /node_modules/,
        loaders: ['ng-annotate'],
      ,
      
        test: /\.js$/,
        exclude: /(node_modules)/,
        loader: 'babel', // 'babel-loader' is also a legal name to reference
        query: 
          presets: ['es2015', 'latest'],
        ,
      ,
      
        test: /\.css$/,
        loader: 'style-loader!css-loader',
      ,
      
        test: /\.html$/,
        loader: 'html',
      ,
      
        test: /\.less$/,
        loader: 'style!css!less',
      ,
    ],
  ,
  resolve: 
    extensions: ['', '.webpack.js', '.web.js', '.ts', '.tsx', '.js'],
    root: [
      path.resolve('./src'),
      path.resolve('./node_modules'),
    ],
    alias: 
      vendor: path.join('/node_modules'),
    ,
    fallback: ['node_modules'],
  ,
;

我试图通过手动创建 dist 文件夹来解决问题,但这也不起作用,文件仍然没有创建。

奇怪的是它之前确实构建了文件,但现在它停止了。我在任何时候都没有更改输出位置或入口文件。

有什么建议吗?

【问题讨论】:

有任何来自 webpack 的日志输出? 它说它正在输出文件。 λ webpack ts-loader: Using typescript@2.0.3 and C:\Users\Justin\blog\tsconfig.json Hash: 2ca3229c0c8fda5a1d6f Version: webpack 1.13.2 Time: 6260ms Asset Size Chunks Chunk Names app.bundle.js 3.98 MB 0 [emitted] app + 353 hidden modules 你的日志输出说明已经生成成功 【参考方案1】:

你的 webpack 输出路径是绝对的:

output: 
    path: path.join('/dist'), <----
    filename: '[name].bundle.js',
,

我猜它是在你的根目录中生成的。 /dist 表示来自文件系统的根目录,而不是相对于您的项目目录。

应该是:

output: 
    path: path.join('./dist'),
    filename: '[name].bundle.js',
,

【讨论】:

是的,就是这样。。谢谢!

以上是关于Webpack 不创建输出文件(不使用 webpack-dev-server)的主要内容,如果未能解决你的问题,请参考以下文章

webpack使用七

Webpack 不捆绑输出 JS 文件

webpack第一节

webpack安装步骤及文件

webpack 安装使用简例

generator-react-webpack