2016-09-12 15 views
5

को नोड के लिए बहुत नया और हेरोोक में तैनात करने के लिए तैनात किया गया। मेरे पास मूलभूत प्रतिक्रिया ऐप स्थापित है और मैं हेरोोकू को तैनात करने का प्रयास कर रहा हूं। मैंने इसे धक्का दिया है, लेकिन ऐप असफल रहा है। जब मैं लॉग देखता हूं तो मुझे sh: 1: webpack: not found (पूर्ण लॉग here)वेबपैक नहीं मिला, हेरोोक

मैं वास्तव में निश्चित नहीं हूं कि क्या हो रहा है, लेकिन मेरा मानना ​​है कि इसका मेरे पैकेज.जेसन के साथ कुछ करना है? मैं इसे का उपयोग कर रहा स्टार्टर टेम्प्लेट से इस तरह के रूप में है:

{ 
    "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" 
    } 
} 

मैं गलत तरीके से क्या कर रहा हूँ इस तैनात पाने के लिए? मेरे लोकहोस्ट पर बहुत अच्छा काम करता है। लेकिन यह पता नहीं लगा सकता कि यह मेरे जीवन के लिए दुनिया में कैसे पहुंचाया जाए। बहुत धन्यवाद!

उत्तर

16

ठीक है - यह, package.json इसके अलावा में devDependencies बनाम निर्भरता से कोई लेना देना NPM_CONFIG_PRODUCTION: false को Heroku config की स्थापना मैं इस को हल करने में सक्षम था द्वारा है। Thx इंटरनेट!

+0

NPM_CONFIG_PRODUCTION "devDependencies" निर्देशिका से packajes स्थापित करने के लिए: झूठे, तुम क्यों करना होगा इस? डिफ़ॉल्ट रूप से heroku निर्भरता स्थापित करेगा और devDependencies नहीं। वेबपैक dev सर्वर भी उत्पादन के लिए नहीं है। – mdcuesta

+0

धन्यवाद कि मेरी समस्या हल हो जाती है –

+0

heroku कॉन्फ़िगरेशन: सेट NPM_CONFIG_PRODUCTION = झूठी इस सुझाव के लिए वाक्यविन्यास है। –

4

यह इसलिए होता है क्योंकि Heroku डिफ़ॉल्ट रूप से package.json के देव निर्भरता स्थापित नहीं है, हम तो यह आदेश चलाकर का समाधान करना चाहिए, exculsively हमारे देव निर्भरता (webpack देव में है) स्थापित करने के लिए Heroku (NPM) बताने की आवश्यकता "समस्या नहीं मिली"

npm install --dev 
+1

यह एक बेहतर समाधान है। – ivarni

+1

मैं एक heroku- preinstall स्क्रिप्ट में --only = dev का उपयोग कर रहा था। यह नया/सही तरीका प्रतीत होता है। बहुत बहुत धन्यवाद!!! – SomethingOn

1

निम्न आदेश, आपकी समस्या का समाधान करना चाहिए heroku config:set NPM_CONFIG_PRODUCTION=false

Heroku में मदद करता है कि ("निर्भरता" fron नहीं)

संबंधित मुद्दे