当我运行捆绑检查时,它说:
ubuntu@ip:/opt/bluecopper/current$ /opt/default-ruby/bundle check
fatal: Not a git repository (or any of the parent directories): .git
The Gemfile's dependencies are satisfied
当我列出宝石时,我得到:
ubuntu@ip:/opt/bluecopper/current$ /opt/default-ruby/bundle list
fatal: Not a git repository (or any of the parent directories): .git
Gems included by the bundle:
* aws-sdk-v1 (1.64.0)
* bluecopper (0.1.0)
* bundler (1.10.5)
* dotenv (2.0.2)
* json (1.8.3)
* mini_portile (0.6.2)
* multi_json (1.11.1)
* nokogiri (1.6.6.2)
* rollbar (1.5.3)
* thor (0.19.1)
但是当我真的尝试exec
时会说:
ubuntu@ip:/opt/bluecopper/current$ /opt/default-ruby/ruby -S bundle exec bluecopper start -c app-config.yml
fatal: Not a git repository (or any of the parent directories): .git
Could not find json-1.8.3 in any of the sources
Run `bundle install` to install missing gems.
知道如何解决这个问题吗?这毫无意义。
答案 0 :(得分:2)
在您使用/opt/default-ruby/bundle
的前两个命令中,但在最后一个/opt/default-ruby/ruby -S bundle
中。
我会尝试使用/opt/default-ruby/bundle exec bluecopper start -c app-config.yml
。它可能与ruby -S
更改$ PATH。
答案 1 :(得分:1)
bluecopper
可执行文件有一个shebang:
#!/usr/bin/env ruby
当使用bundle exec
调用时,命令使用系统ruby而不是预期的/opt/default-ruby/ruby
,修复方法是将路径更改为前置/opt/default-ruby
,以便{{1}会选择正确的。