“第;没有此类文件或目录/usr/bin/env npm“;虽然它真的在这里

“第;没有此类文件或目录/usr/bin/env npm“;虽然它真的在这里,npm,capistrano,Npm,Capistrano,运行任务返回时,我遇到了一个奇怪的cap错误: INFO[f0017d58] Running /usr/bin/env npm install --silent on default DEBUG[f0017d58] Command: cd /var/www/myapp/releases/20141208112620 && /usr/bin/env npm install --silent DEBUG[f0017d58] /usr/bin/env: DEBUG[

运行任务返回时,我遇到了一个奇怪的
cap
错误:

INFO[f0017d58] Running /usr/bin/env npm install --silent on default
DEBUG[f0017d58] Command: cd /var/www/myapp/releases/20141208112620 && /usr/bin/env npm       install --silent
DEBUG[f0017d58]     /usr/bin/env:
DEBUG[f0017d58]     npm
DEBUG[f0017d58]     : No such file or directory
DEBUG[f0017d58]
cap aborted!
当我通过
ssh
登录时(使用同一个用户),这一切正常:

vagrant@localhost:~$ cd /var/www/myapp/releases/20141208112620 && /usr/bin/env npm    install --silent
grunt-contrib-uglify@0.3.3 node_modules/grunt-contrib-uglify
├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1)
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
└── uglify-js@2.4.15 (uglify-to-browserify@1.0.2, async@0.2.10, optimist@0.3.7, source-map@0.1.34)
所以有些奇怪的东西我无法识别

谢谢你的帮助


编辑:是的,我找到了问题的根源。 当我登录时(通过
vagrant ssh
),我会得到一个与使用
cap
不同的env。
基本上,我可以在登录时从CLI调用
npm
,这将在
/usr/local/node/node default/bin/npm
中找到它,而
cap
不能,因为它所使用的路径(或类似的路径)中没有任何一个下面的fixe解决了这个问题

deploy.rb Gemfile 卡普里
set :nvm_node, 'v8.9.1'

set :nvm_map_bins, %w{node npm}
gem 'capistrano-nvm'
require 'capistrano/nvm'