Ich teste den Mern Stack aus (Mongo Express React/Redux Knoten) und richte ihn ohne Probleme mit der Entwicklung ein. Jetzt versuche ich nach Heroku zu deployen. Ich habe einen git Push Heroku Master wie normal, aber wenn ich auf der Website sehe ich Heroku's Application Error. Ich habe über Heroku eine MongoDB hinzugefügt und meine heroku config-Variablen geändert, sodass diese db verwendet wird (ich denke, ich habe das richtig gemacht). So prüfe ich in Scheite:Wie bekomme ich Mern Stack um mit Heroku zu arbeiten?
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] start: `cross-env NODE_ENV=development nodemon index.js`
npm ERR! spawn ENOENT
Ein kleiner Weg nach unten:
> [email protected] start /app
> cross-env NODE_ENV=development nodemon index.js
sh: 1: cross-env: not found
Weiter unten:
npm ERR! Linux 3.13.0-79-generic
npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
npm ERR! node v5.10.0
npm ERR! npm v3.8.3
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! [email protected] start: `cross-env NODE_ENV=development nodemon index.js`
npm ERR! syscall spawn
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the [email protected] start script 'cross-env NODE_ENV=development nodemon index.js'.
Also ich weiß nicht so viel über das hintere Ende, aber es scheint das Entwicklungsskript in package.json auszuführen:
"scripts": {
"test": "mocha shared/tests/*.spec.js --compilers js:babel-register",
"test:server": "cross-env NODE_ENV=test PORT=8080 MONGO_URL=mongodb://localhost:27017/mern-test mocha --compilers js:babel-register --recursive server/tests/**/*.spec.js",
"start": "cross-env NODE_ENV=development nodemon index.js",
"start:prod": "cross-env NODE_ENV=production node index.js",
"bs": "npm run clean && npm run build && npm run start:prod",
"minify": "cleancss -o static/css/app.min.css static/css/app.css",
"build": "cross-env NODE_ENV=production webpack --config webpack.config.prod.js && npm run minify",
"clean": "rimraf static/dist",
"slate": "rimraf node_modules && npm install",
"lint": "eslint client server shared"
}
Also wie kann ich das zum Laufen bringen?
EDIT:
"devDependencies": {
"babel-eslint": "^5.0.0-beta6",
"babel-loader": "^6.2.1",
"babel-plugin-react-transform": "^2.0.0",
"babel-plugin-transform-react-constant-elements": "6.5.0",
"babel-plugin-transform-react-inline-elements": "6.6.5",
"babel-plugin-transform-react-remove-prop-types": "0.2.4",
"babel-polyfill": "^6.3.14",
"babel-preset-es2015": "^6.3.13",
"babel-preset-react": "^6.3.13",
"babel-preset-react-hmre": "^1.1.0",
"babel-register": "^6.7.2",
"chai": "^3.5.0",
"clean-css": "^3.4.9",
"cross-env": "^1.0.7",
"css-loader": "^0.23.1",
"css-modules-require-hook": "^2.1.0",
"deep-freeze": "0.0.1",
"eslint": "^1.10.3",
"eslint-config-airbnb": "^4.0.0",
"eslint-plugin-react": "^3.16.1",
"expect": "^1.13.4",
"expect-jsx": "^2.2.2",
"extract-text-webpack-plugin": "^1.0.1",
"mocha": "^2.4.5",
"nodemon": "^1.9.1",
"pre-commit": "^1.1.2",
"react-addons-test-utils": "^0.14.7",
"react-transform-hmr": "^1.0.1",
"redux-devtools": "^3.1.1",
"redux-devtools-dock-monitor": "^1.1.0",
"redux-devtools-log-monitor": "^1.0.4",
"rimraf": "^2.5.1",
"style-loader": "^0.13.0",
"supertest": "^1.1.0",
"webpack": "^1.12.12",
"webpack-dev-middleware": "^1.5.1",
"webpack-hot-middleware": "^2.6.4"
},
Können Sie die Abhängigkeiten von package.json posten? Ist 'cross-env' enthalten? Oder können Sie bestätigen, dass Sie "npm install" ausgeführt haben, bevor Sie die Befehle ausführen? – lux
Es wurde bearbeitet, um Dev-Abhängigkeiten anzuzeigen. Cross-Env ist da. Sollte es eine Abhängigkeit sein? – jro
Und du hast 'npm install' vor' npm run>? –
lux