不#34;构建"运行npm run deployment

时间:2017-08-15 04:09:49

标签: reactjs github npm

我正在尝试将我的反应应用程序部署到github页面。每次我跑" npm run deploy"我收到这个错误:

ENOENT: no such file or directory, stat '/Users/username/my-app/build'

npm ERR! Darwin 16.3.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "deploy"
npm ERR! node v6.11.0
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! reactdemo@1.0.0 deploy: `gh-pages -d build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the reactdemo@1.0.0 deploy script 'gh-pages -d build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the reactdemo package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     gh-pages -d build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs reactdemo
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls reactdemo
npm ERR! There is likely additional logging output above.

这是我的package.json脚本

"scripts": {
    "compile": "webpack",
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack --config webpack.config.js",
    "predeploy": "npm run build",
    "deploy": "gh-pages -d build"
  },

Webpack.config.js

const path = require('path');

module.exports = {
  context: path.join(__dirname, 'src'),
  entry: [
    './main.js',
  ],
  output: {
    path: path.join(__dirname, 'www'),
    filename: 'bundle.js',
  },
  module: {
    rules: [
      {
        test: /\.js$/,
        exclude: /node_modules/,
        use: [
          'babel-loader',
        ],
      },
    ],
  },
  resolve: {
    modules: [
      path.join(__dirname, 'node_modules'),
    ],
  },
};

我猜它与我的构建脚本的编写方式有关。正在运行" npm run build"工作正常。

编辑:添加了webpack配置

1 个答案:

答案 0 :(得分:3)

命令gh-pages -d build将部署build目录中的所有内容。但是,您不使用build目录作为捆绑包,而是使用www目录。

将命令更改为gh-pages -d www