Node.js npm错误!无法读取未定义--Bluemix的属性“暂停”

Node.js npm错误!无法读取未定义--Bluemix的属性“暂停”,node.js,deployment,sails.js,ibm-cloud,Node.js,Deployment,Sails.js,Ibm Cloud,我正在尝试将Sails.js应用程序部署到Bluemix,在调用CF PUSH命令时,在Bluemix工具链的部署阶段,我们遇到以下错误: npm错误!无法读取未定义的属性“暂停” 我知道跟踪会指向npm-error.log文件,但是,我还没有找到它,因为我们无法通过ssh连接查看文件中的内容,因为应用程序在错误部署后处于关闭状态 就在8天前,通过cfpush{app name}和Bluemix中的一个简单构建和部署工具链,成功地部署了相同的代码 在构建阶段,我可以很好地运行Npm安装和Npm更

我正在尝试将Sails.js应用程序部署到Bluemix,在调用CF PUSH命令时,在Bluemix工具链的部署阶段,我们遇到以下错误:

npm错误!无法读取未定义的属性“暂停”

我知道跟踪会指向npm-error.log文件,但是,我还没有找到它,因为我们无法通过ssh连接查看文件中的内容,因为应用程序在错误部署后处于关闭状态

就在8天前,通过cfpush{app name}和Bluemix中的一个简单构建和部署工具链,成功地部署了相同的代码

在构建阶段,我可以很好地运行Npm安装和Npm更新。然而,它似乎在部署阶段再次这样做,但它失败了。下面是关于这次失败的一些细节

NODE_ENV=production
   NPM_CONFIG_LOGLEVEL=error
   NPM_CONFIG_PRODUCTION=true
   Visit http://docs.cloudfoundry.org/buildpacks/node/index.html#vendoring
   NODE_HOME=/tmp/app/.cloudfoundry/0/node
   NODE_MODULES_CACHE=true
   NODE_VERBOSE=false
Restoring cache
       Loading 3 from cacheDirectories (default):
       - .npm
       - .cache/yarn (not cached - skipping)
       - bower_components (not cached - skipping)
       Installing node modules (package.json) Building dependencies
 sails@0.12.13 preinstall /tmp/app/node_modules/sails
 node ./lib/preinstall_npmcheck.js
Sails.js Installation: Checking npm-version successful
npm ERR! Cannot read property 'pause' of undefined
npm ERR!     /tmp/app/.npm/_logs/2017-09-09T17_02_48_660Z-debug.log
       **ERROR** Unable to build dependencies: exit status 1
Failed to compile droplet
Exit status 223
Staging failed: Exited with status 223
Destroying container
npm ERR! A complete log of this run can be found in:
Successfully destroyed container
Package.json文件

{
  "name": "myApp",
  "private": true,
  "version": "0.0.1",
  "description": "Stuff my app does",
  "keywords": [
    "Cool Apps"
  ],
  "dependencies": {
    "bcryptjs": "^2.4.3",
    "cacheman": "^2.2.1",
    "ejs": "2.3.4",
    "elasticsearch": "^13.0.0-rc2",
    "find-remove": "^1.0.1",
    "fs": "0.0.1-security",
    "grunt": "1.0.1",
    "grunt-contrib-clean": "1.0.0",
    "grunt-contrib-coffee": "1.0.0",
    "grunt-contrib-concat": "1.0.1",
    "grunt-contrib-copy": "1.0.0",
    "grunt-contrib-cssmin": "1.0.1",
    "grunt-contrib-jst": "1.0.0",
    "grunt-contrib-less": "1.3.0",
    "grunt-contrib-uglify": "1.0.1",
    "grunt-contrib-watch": "1.0.0",
    "grunt-sails-linker": "~0.10.1",
    "grunt-sync": "0.5.2",
    "include-all": "^1.0.0",
    "jsonwebtoken": "^7.3.0",
    "moment": "^2.18.1",
    "moment-timezone": "^0.5.13",
    "passport": "^0.2.x",
    "passport-http-bearer": "^1.0.1",
    "passport-idaas-openidconnect": "^1.1.0",
    "passport-local": "^1.0.0",
    "rc": "1.0.1",
    "request": "^2.81.0",
    "request-promise": "^4.2.0",
    "sails": "~0.12.13",
    "sails-disk": "~0.10.9",
    "sails-mongo": "^0.12.2",
    "stream": "0.0.2",
    "uuid-1345": "^0.99.6",
    "validator": "^7.0.0",
    "natural-sort": "^1.0.0"
  },
  "scripts": {
    "start": "node app.js"
  },
  "engines": {
    "node": "^8.0.x",
    "npm": "^5.0.x"
  },
  "main": "app.js",
  "author": "Scott N",
  "license": ""
}
到目前为止我已经尝试过的事情。 -更改节点版本 -更改的npm版本 -更改依赖项版本以包含^prefix -删除了package.json文件中的所有依赖项,但不包括sail

{
  "name": "myApp",
  "private": true,
  "version": "0.0.1",
  "description": "Stuff my app does",
  "keywords": [
    "Cool Apps"
  ],
  "dependencies": {
    "bcryptjs": "^2.4.3",
    "cacheman": "^2.2.1",
    "ejs": "2.3.4",
    "elasticsearch": "^13.0.0-rc2",
    "find-remove": "^1.0.1",
    "fs": "0.0.1-security",
    "grunt": "1.0.1",
    "grunt-contrib-clean": "1.0.0",
    "grunt-contrib-coffee": "1.0.0",
    "grunt-contrib-concat": "1.0.1",
    "grunt-contrib-copy": "1.0.0",
    "grunt-contrib-cssmin": "1.0.1",
    "grunt-contrib-jst": "1.0.0",
    "grunt-contrib-less": "1.3.0",
    "grunt-contrib-uglify": "1.0.1",
    "grunt-contrib-watch": "1.0.0",
    "grunt-sails-linker": "~0.10.1",
    "grunt-sync": "0.5.2",
    "include-all": "^1.0.0",
    "jsonwebtoken": "^7.3.0",
    "moment": "^2.18.1",
    "moment-timezone": "^0.5.13",
    "passport": "^0.2.x",
    "passport-http-bearer": "^1.0.1",
    "passport-idaas-openidconnect": "^1.1.0",
    "passport-local": "^1.0.0",
    "rc": "1.0.1",
    "request": "^2.81.0",
    "request-promise": "^4.2.0",
    "sails": "~0.12.13",
    "sails-disk": "~0.10.9",
    "sails-mongo": "^0.12.2",
    "stream": "0.0.2",
    "uuid-1345": "^0.99.6",
    "validator": "^7.0.0",
    "natural-sort": "^1.0.0"
  },
  "scripts": {
    "start": "node app.js"
  },
  "engines": {
    "node": "^8.0.x",
    "npm": "^5.0.x"
  },
  "main": "app.js",
  "author": "Scott N",
  "license": ""
}
因此,Sails.js和Nodebuildpack/Bluemix之间的关系并不好

任何帮助都将不胜感激。
谢谢

我也是这样。我必须回滚npm的上一个版本:5.3.0,它现在可以工作了。顺便说一句:马科斯

该错误仅在我更新npm版本时发生,如下所示:

  Update available 5.3.0 → 5.4.1    
   Run npm i -g npm to update      

这同样发生在我身上。我必须回滚npm的上一个版本:5.3.0,它现在可以工作了。顺便说一句:马科斯

该错误仅在我更新npm版本时发生,如下所示:

  Update available 5.3.0 → 5.4.1    
   Run npm i -g npm to update      

处理它的最佳方法是更新package.json以使用这样的引擎

在尝试推送到heroku时遇到此问题,heroku似乎是由指定的npm版本,同时指定上述版本使IBMBlueMix将其作为默认节点引擎,而不是使用最新的稳定版本

不要忘记直接指定节点和npm版本,而不是添加波浪线或插入符号,这只是为了安全。查看有关瓷砖和插入符号的更多信息


您仍然可以查看答案以了解更多信息

处理它的最佳方法是更新您的package.json以使用类似的引擎

在尝试推送到heroku时遇到此问题,heroku似乎是由指定的npm版本,同时指定上述版本使IBMBlueMix将其作为默认节点引擎,而不是使用最新的稳定版本

不要忘记直接指定节点和npm版本,而不是添加波浪线或插入符号,这只是为了安全。查看有关瓷砖和插入符号的更多信息


您仍然可以查看答案以了解更多信息,因此我将package.json文件中的sails版本从0.12回滚到0.11,并且部署良好。所以CF PUSH和最新的sails版本在Bluemix上不太合拍。这是在使用Node 8.0和NPM版本^5.0.x,因此我将package.json文件中的sails版本从0.12回滚到0.11,并且部署良好。所以CF PUSH和最新的sails版本在Bluemix上不太合拍。这是使用Node 8.0和NPM版本^5.0.x

在我的Mac电脑上运行正常。甚至当我在所有旧的NPM版本和节点版本中循环运行时,运行良好。问题是,当它在Bluemix上运行时,会出现如下错误。我将试一试,看看会发生什么。我在部署和构建阶段尝试过,但没有成功。我最后做的是使用Sails.js版本12.2、Node版本8.2.1和NPM 5.3.0,这很有效。我很感激你的回答它在我的Mac电脑上运行的很好。甚至当我在所有旧的NPM版本和节点版本中循环运行时,运行良好。问题是,当它在Bluemix上运行时,会出现如下错误。我将试一试,看看会发生什么。我在部署和构建阶段尝试过,但没有成功。我最后做的是使用Sails.js版本12.2、Node版本8.2.1和NPM 5.3.0,这很有效。我很感谢您使用sails v 0.12.13的回答,它通过更新软件包上的引擎工作得很好。json它在哪里工作得很好?蓝混血?这就是问题不在本地的地方。我可以在任何地方运行这个项目,但Bluemix除外。如问题中所述,package.json文件指定了引擎,这就是我在所有节点和npm版本中循环的方式。它在云构建上本地工作,但失败,因为您指定您的引擎使用最新的主要版本,所以我使用的是sails v 0.12.13,通过更新package.json上的引擎,它工作得很好。它在哪里工作得很好?蓝混血?这就是问题不在本地的地方。我可以在任何地方运行这个项目,但Bluemix除外。如问题中所述,package.json文件指定了引擎。这是我循环浏览所有节点和npm版本的方式。它在云构建上本地工作。它失败,因为您指定引擎使用最新的主要版本。如果在
代码框使用引擎时请直接输入,为了安全起见,请直接输入版本,而不是使用>或^@ScottN只需试一试@ScottN使引擎与此处指定的引擎相似,并查看结果如果您向下滚动代码框中的,软件包已经在使用引擎,请直接输入版本,为了安全起见,不要使用>或^@ScottN只需尝试一下@ScottN使引擎与此处指定的引擎相同,然后查看结果