2016-09-12 22 views
5

非常に新規であり、Herokuに展開しています。私は基本的なReactアプリをセットアップしており、Herokuにデプロイしようとしています。私はそれをプッシュしているが、アプリケーションが失敗している。ログを見ると、何かが表示されますsh: 1: webpack: not found(フルログhereWebpackが見つからない、Herokuに展開する

私は実際に何が起こっているのかは確かではありませんが、私のpackage.jsonと関係があると思いますか?

{ 
    "name": "express-react-redux-starter", 
    "version": "1.0.0", 
    "description": "Starter for Express, React, Redux, SCSS applications", 
    "scripts": { 
     "dev": "webpack-dev-server --config ./webpack/webpack-dev.config.js --watch --colors", 
     "build": "rm -rf dist && webpack --config ./webpack/webpack-prod.config.js --colors", 
     "start": "PORT=8080 node start ./server.js", 
     "test": "mocha --compilers js:babel-core/register --require ./test/test_helper.js --recursive ./test", 
     "test:watch": "npm run test -- --watch", 
     "lint": "eslint src test webpack" 
    }, 
    "keywords": [ 
     "ExpressJS", 
     "ReactJS", 
     "Redux", 
     "React hot loader", 
     "React Router", 
     "SCSS", 
     "Webpack Devevelopment configuration", 
     "Webpack Production configuration", 
     "Airbnb Eslint", 
     "pm2", 
     "mocha", 
     "chai" 
    ], 
    "repository": { 
     "type": "git", 
     "url": "git+https://github.com/DimitriMikadze/express-react-redux-starter" 
    }, 
    "author": "Dimitri Mikadze", 
    "license": "MIT", 
    "devDependencies": { 
     "autoprefixer": "^6.4.0", 
     "autoprefixer-loader": "^3.2.0", 
     "babel-core": "^6.8.0", 
     "babel-loader": "^6.2.4", 
     "babel-preset-es2015": "^6.6.0", 
     "babel-preset-react": "^6.5.0", 
     "babel-preset-stage-1": "^6.5.0", 
     "chai": "^3.5.0", 
     "chai-jquery": "^2.0.0", 
     "css-loader": "^0.23.1", 
     "eslint": "^2.10.2", 
     "eslint-config-airbnb": "^9.0.1", 
     "eslint-plugin-import": "^1.8.0", 
     "eslint-plugin-jsx-a11y": "^1.2.0", 
     "eslint-plugin-react": "^5.1.1", 
     "extract-text-webpack-plugin": "^1.0.1", 
     "html-webpack-plugin": "^2.16.1", 
     "jquery": "^2.2.3", 
     "jsdom": "^9.0.0", 
     "mocha": "^2.4.5", 
     "node-sass": "^3.7.0", 
     "react-addons-test-utils": "^15.0.2", 
     "react-hot-loader": "^1.3.0", 
     "sass-loader": "^3.2.0", 
     "style-loader": "^0.13.1", 
     "url-loader": "^0.5.7", 
     "webpack-dev-server": "^1.14.1" 
    }, 
    "dependencies": { 
     "classnames": "^2.2.5", 
     "express": "^4.13.4", 
     "lodash": "^4.15.0", 
     "react": "^15.0.2", 
     "react-dom": "^15.0.2", 
     "react-redux": "^4.4.5", 
     "react-router": "^2.4.0", 
     "redux": "^3.5.2", 
     "webpack": "^1.13.0" 
    } 
} 

このデプロイメントを取得するにはどうすればよいですか?私のlocalhost上でうまく動作します。しかし、私の人生のためにこれを世界に広める方法を理解することはできません。どうもありがとう!

答えて

16

[OK] - これは、dev.jsonの依存関係とpackage.jsonの依存関係 また、Herokuの設定をNPM_CONFIG_PRODUCTION: falseに設定することで解決できました。 Thxインターネット!

+0

NPM_CONFIG_PRODUCTION:偽、なぜあなたはどうなりますこの?デフォルトでherokuはdevDependenciesではなく依存関係をインストールします。また、webpack dev serverは本番用ではありません。 – mdcuesta

+0

私の問題を解決していただきありがとうございます –

+0

heroku config:set NPM_CONFIG_PRODUCTION = falseはこの提案の構文です。 –

4

これは、デフォルトではHerokuのは、package.jsonのDEVの依存関係をインストールしていないため、我々は(WebPACKのがDEVである)exculsively当社のdevの依存関係をインストールするHerokuの(NPM)を指示する必要がありますので、このコマンドを実行すると を解決する必要がありますが起こります「問題が見つかりません」

コマンドに続き

npm install --dev 
+1

これははるかに良い解決策です。 – ivarni

+1

私はheroku-preinstallスクリプトで--only = devを使用していました。これは新しい/正しい方法と思われます。どうもありがとうございます!!! – SomethingOn

1

、あなたの問題を解決する必要がありheroku config:set NPM_CONFIG_PRODUCTION=false

"devDependencies" ディレクトリからpackajesをインストールするには、Herokuのを助けること( "依存" をフロンない)

関連する問題