2017-09-05 159 views
1

尝试部署Node.js应用程序时,我在post_install.sh AfterInstall脚本中收到错误npm: command not found。什么是超级奇怪的是在我的BeforeInstall脚本我运行npm install -g pm2,它工作得很好,没有任何错误。AWS CodeDeploy命令未找到

两者都作为ubuntu用户运行。为什么这个命令在一个CodeDeploy脚本中工作并在另一个脚本中失败?

+0

添加npm可执行文件的完整路径。 –

+0

@RamanSailopal我怎么找到?为什么我必须这样做呢? –

+0

在命令行键入“whereis npm”,然后在脚本中添加完整路径,而不仅仅是npm。 –

回答

2

看起来我可以通过将以下内容添加到我的脚本文件来解决此问题。

export NVM_DIR="$HOME/.nvm" 
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm 
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion 

希望这可以帮助别人。