Bundler 说捆绑没问题,但不会 运行 代码
Bundler says the bundle is ok but won't run the code
当我 运行 捆绑检查时,它说:
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.
知道如何解决这个问题吗?没有意义。
在前两个命令中您使用 /opt/default-ruby/bundle
但在最后一个命令中 /opt/default-ruby/ruby -S bundle
.
我会尝试使用 /opt/default-ruby/bundle exec bluecopper start -c app-config.yml
。这可能与 ruby -S
更改 $PATH 有关。
bluecopper
可执行文件有一个 shebang:
#!/usr/bin/env ruby
这个,当用 bundle exec
调用时,命令使用系统 ruby 而不是预期的 /opt/default-ruby/ruby
,修复是更改路径以预先添加 /opt/default-ruby
这样 /usr/bin/env ruby
就会选择正确的。
当我 运行 捆绑检查时,它说:
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.
知道如何解决这个问题吗?没有意义。
在前两个命令中您使用 /opt/default-ruby/bundle
但在最后一个命令中 /opt/default-ruby/ruby -S bundle
.
我会尝试使用 /opt/default-ruby/bundle exec bluecopper start -c app-config.yml
。这可能与 ruby -S
更改 $PATH 有关。
bluecopper
可执行文件有一个 shebang:
#!/usr/bin/env ruby
这个,当用 bundle exec
调用时,命令使用系统 ruby 而不是预期的 /opt/default-ruby/ruby
,修复是更改路径以预先添加 /opt/default-ruby
这样 /usr/bin/env ruby
就会选择正确的。