Heroku buildpack马忽略package.json中的节点版本
我是一名相当新手的Meteor开发人员,试图将应用程序部署到Heroku服务器上。
主要问题是bcrypt需要更新版本的node才能工作,并且由于某种原因,在package.json中'engines'中指定的节点版本无法与AdmitHub的流星的buildpack马一起使用-它一直在使用很多对于我正在运行的bcrypt版本(3.0.6)和Meteor(1.8.1)均不建议使用的较旧版本(节点v0.10.48和npm v2.15.1)。我正在尝试使用Node v10.16.2和npm v6.10.3
我已经尝试确保项目名称与package.json中的回购名称匹配,并将其设置为几个不同的版本。我还测试了节点buildpack的使用,并且在使用该json时它获得了正确的版本,但是由于它不是流星buildpack而无法运行。
Package.json
{
"name": "response-star-test",
"version": "5.4.0",
"private": true,
"engines":{"npm":"6.10.3", "node":"10.16.2"},
"scripts": {
"tsc": "tsc react-meteor-data.ts",
"postinstall": "run-s build:*",
"start": "run-s build watch:server",
"test": "run-p lint ava",
"test:server": "meteor test --once --driver-package
dispatch:mocha --port 3100 --settings settings.test.json",
"test:server:watch": "TEST_WATCH=1 meteor test --driver-
package dispatch:mocha --port 3100 --settings settings.test.json",
"ava": "NODE_ENV=test ava --verbose tests",
"lint": "standard | snazzy",
"lint:fix": "standard --fix",
"build": "run-s build:*",
"build:css": "postcss --config ./postcss.config.js --output ./client/bundle.css ./imports/ui/main.css",
"watch": "run-p watch:*",
"watch:css": "nodemon --quiet --watch ./imports/ui --ext css --exec npm run build:css",
"watch:server": "meteor run --settings settings.json"
},
"dependencies": {
"@types/react": "^16.9.2",
"assert": "^2.0.0",
"async": "^2.6.3",
"autoprefixer": "^6.5.1",
"babel-plugin-transform-class-properties": "^6.24.1",
"babel-preset-es2015": "^6.16.0",
"babel-preset-react": "^6.16.0",
"babel-register": "^6.26.0",
"babel-runtime": "6.18.0",
"basscss": "^8.1.0",
"basscss-background-colors": "^2.1.0",
"basscss-colors": "^2.2.0",
"basscss-responsive-margin": "^1.1.0",
"basscss-responsive-padding": "^1.1.0",
"bcrypt": "^3.0.6",
"child_process": "^1.0.2",
"classnames": "^2.2.6",
"create-react-class": "^15.6.3",
"crypto": "^1.0.1",
"debug": "^2.6.9",
"deep-equal": "^1.0.1",
"escape-string-regexp": "^1.0.5",
"event-loop-lag": "^1.4.0",
"fibers": "^4.0.1",
"fs": "0.0.1-security",
"he": "^1.2.0",
"iso-3166-1-alpha-2": "^1.0.0",
"joi-browser": "^10.6.1",
"jquery": "^3.4.1",
"lodash": "^4.17.15",
"meteor-babel": "^7.5.7",
"meteor-babel-helpers": "0.0.3",
"meteor-node-stubs": "~0.2.0",
"meteor-promise": "^0.8.7",
"meteor-user-roles": "^1.1.7",
"moment": "^2.24.0",
"mongodb": "^3.3.0",
"node-diff": "^0.2.0",
"node4mailer": "^4.0.3",
"npm-run-all": "^3.1.1",
"os": "^0.1.1",
"path": "^0.12.7",
"postcss": "^5.2.18",
"postcss-calc": "^5.3.1",
"postcss-cli": "^2.6.0",
"postcss-custom-media": "^5.0.1",
"postcss-custom-properties": "^5.0.1",
"postcss-easy-import": "^1.0.1",
"postcss-functions": "^2.1.1",
"postcss-import": "^8.1.2",
"prop-types": "^15.7.2",
"query-string": "^6.8.2",
"react": "^16.9.0",
"react-addons-pure-render-mixin": "^15.6.2",
"react-day-picker": "^7.3.2",
"react-dom": "^16.9.0",
"react-helmet": "^5.2.1",
"react-router-dom": "^5.0.1",
"semver": "^6.3.0",
"smartsurvey-client": "^1.2.0",
"source-map-support": "^0.5.13",
"underscore": "^1.9.1",
"url": "^0.11.0"
},
"devDependencies": {
"ava": "^0.19.1",
"babel-eslint": "^7.2.2",
"enzyme": "^3.10.0",
"faker": "^4.1.0",
"nodemon": "^1.19.1",
"pre-commit": "^1.1.3",
"snazzy": "^7.1.1",
"standard": "^10.0.3"
},
"ava": {
"babel": "inherit",
"require": [
"babel-register"
]
},
"standard": {
"parser": "babel-eslint"
}
}
控制台日志
git push heroku master
Enumerating objects: 200, done.
Counting objects: 100% (200/200), done.
Delta compression using up to 4 threads
Compressing objects: 100% (107/107), done.
Writing objects: 100% (111/111), 115.45 KiB | 2.31 MiB/s, done.
Total 111 (delta 49), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Node.js app detected
remote: -----> Installing node
remote: -----> Installing meteor
remote: Downloading Meteor distribution
remote:
remote: Meteor 1.8.1 has been installed in your home directory (~/.meteor).
remote:
remote: Now you need to do one of the following:
remote:
remote: (1) Add "$HOME/.meteor" to your path, or
remote: (2) Run this command as root:
remote: cp "/app/tmp/buildpacks/70b014ca5f012fbcd571457366ff69b27da3ac5fa3f75060cd18fbc3bb7e4197c59b93620c093e230d716bdebaaf233e031e247f905457a1aeae6c4cdd57a918/meteor-Llwd/.meteor/packages/meteor-tool/1.8.1/mt-os.linux.x86_64/scripts/admin/launch-meteor" /usr/bin/meteor
remote:
remote: Then to get started, take a look at 'meteor --help' or see the docs at
remote: docs.meteor.
remote: npm WARN deprecated [email protected]: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
remote: npm WARN deprecated [email protected]: