Node.js 为什么npm安装命令会在节点应用程序中反复运行?
我正在经历一个奇怪的情况。我在macOS Sierra 10.12.3中得到了一个节点应用程序。我还得到了以下信息: 节点-v打印v8.4.0 npm-v打印5.3.0 package.json文件:Node.js 为什么npm安装命令会在节点应用程序中反复运行?,node.js,amazon-web-services,npm,package.json,Node.js,Amazon Web Services,Npm,Package.json,我正在经历一个奇怪的情况。我在macOS Sierra 10.12.3中得到了一个节点应用程序。我还得到了以下信息: 节点-v打印v8.4.0 npm-v打印5.3.0 package.json文件: { "name": "myapp", "version": "1.0.1", "description": "My Node App", "main": "app.js", "scripts": { "install": "npm install", "
{
"name": "myapp",
"version": "1.0.1",
"description": "My Node App",
"main": "app.js",
"scripts": {
"install": "npm install",
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js"
},
"engines": {
"node": ">=6"
},
"author": "blackjack",
"license": "ISC",
"dependencies": {
"angular": "^1.5.8"
}
}
当我运行“npm安装”以安装依赖项时,这些依赖项已安装,但“npm安装”将重新运行。事实上,它从未停止一次又一次的运行
看看这个:
pathfinder:myapp blackjack$ npm install --loglevel verbose
npm info it worked if it ends with ok
npm verb cli [ '/usr/local/bin/node',
npm verb cli '/usr/local/bin/npm',
npm verb cli 'install',
npm verb cli '--loglevel',
npm verb cli 'verbose' ]
npm info using npm@5.3.0
npm info using node@v8.4.0
npm verb npm-session 0695436488c367c7
npm info lifecycle myapp@1.0.1~preinstall: myapp@1.0.1
npm verb correctMkdir /Users/blackjack/.npm/_locks correctMkdir not in flight; initializing
npm verb lock using /Users/blackjack/.npm/_locks/staging-e02d0e92bf103f5a.lock for /Users/blackjack/dev/web/myapp/node_modules/.staging
npm verb unlock done using /Users/blackjack/.npm/_locks/staging-e02d0e92bf103f5a.lock for /Users/blackjack/dev/web/myapp/node_modules/.staging
npm info linkStuff myapp@1.0.1
npm verb linkBins myapp@1.0.1
npm verb linkMans myapp@1.0.1
npm info lifecycle myapp@1.0.1~install: myapp@1.0.1
> myapp@1.0.1 install /Users/blackjack/dev/web/myapp
> npm install
npm info it worked if it ends with ok
npm verb cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'install' ]
npm info using npm@5.3.0
npm info using node@v8.4.0
npm verb npm-session aeb46163714f97fa
npm info lifecycle myapp@1.0.1~preinstall: myapp@1.0.1
npm verb correctMkdir /Users/blackjack/.npm/_locks correctMkdir not in flight; initializing
npm verb lock using /Users/blackjack/.npm/_locks/staging-e02d0e92bf103f5a.lock for /Users/blackjack/dev/web/myapp/node_modules/.staging
npm verb unlock done using /Users/blackjack/.npm/_locks/staging-e02d0e92bf103f5a.lock for /Users/blackjack/dev/web/myapp/node_modules/.staging
npm info linkStuff myapp@1.0.1
npm verb linkBins myapp@1.0.1
npm verb linkMans myapp@1.0.1
npm info lifecycle myapp@1.0.1~install: myapp@1.0.1
> myapp@1.0.1 install /Users/blackjack/dev/web/myapp
> npm install
^C
它从不打印“OK”来表示它按预期工作。
应用程序在“node app.js”命令后运行正常。但是,它阻止了AWS Beanstalk中的安装。我看不出打印出任何错误 从您的package.json中删除“安装”:“npm安装”
如中所示,npm在安装包后运行此处指定的命令。因此,在此处指定npm install
将永远运行npm install
。从您的package.json中删除“install”:“npm install”
如中所示,npm在安装包后运行此处指定的命令。因此,在这里指定
npm install
将永远运行npm install
。如果您谈论angular seed git repository,package.json中有“prestart”:“npm install”
。您可以将其删除,以防止其重复运行。如果它存在于包文件中,那么即使您运行“npm start”
命令,它也将运行“npm install”
。如果您谈论角种子git存储库,package.json中也有“prestart”:“npm install”
。您可以将其删除,以防止其重复运行。如果它在包文件中,那么即使您运行“npm start”
命令,它也将运行“npm install”