2017-02-27 63 views
0

我有一個包含兩個任務startstop的名稱空間的耙子任務。我namespace:stop PED,然後再namespace:start版,然後......打捆我炸燬了:Bundler在任何來源中都找不到耙子「

/home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/spec_set.rb:87:in `block in materialize': Could not find rake-12.0.0 in any of the sources (Bundler::GemNotFound) 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/spec_set.rb:80:in `map!' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/spec_set.rb:80:in `materialize' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/definition.rb:176:in `specs' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/definition.rb:235:in `specs_for' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/definition.rb:224:in `requested_specs' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/runtime.rb:118:in `block in definition_method' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/runtime.rb:19:in `setup' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler.rb:100:in `setup' 
    from /home/user/.rvm/gems/ruby-2.4.0/gems/bundler-1.14.5/lib/bundler/setup.rb:20:in `<top (required)>' 
    from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require' 
    from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require' 

bundle install作品,rake, version 12.0.0安裝,rails c啓動了罰款。與Apache的乘客顯示應用程序沒有問題。我重新安裝了rvm,Ruby,Rails等。bundle exec rake namespace:startbin\rake namespace:start引發了同樣的錯誤信息。

我已經發布這個爲a bug in bundlerwith environment details),但也許它不是一個錯誤,但配置問題的路徑,權限,或...什麼?

+0

你可以顯示你的'htaccess'文件嗎? –

回答

0

我終於意識到我非常愚蠢的錯誤。希望我的尷尬可以拯救別人的。我按照一些建議來解決an issue with the gem mini_magick身邊暫時無法調整圖像,看起來有點像這樣:

$ cat config/environments/production.rb 
# ... 
ENV['PATH'] = "/usr/bin:#{ENV['PATH']}" 

我終於明白了,導致這種怪異的局面:

$ ruby -v 
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux] 
$ irb 
2.4.0 :001 > `ruby -v` 
=> "ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]\n" 
2.4.0 :001 > quit 
$ rails c production 
Loading production environment (Rails 5.0.1) 
2.4.0 :001 > `ruby -v` 
=> "ruby 2.0.0p648 (2015-12-16) [x86_64-linux]\n" 

正如你所看到的,Rails正在挑選不同版本的Ruby - 的確,系統Ruby,而不是我的RVM管理的Ruby 2.4。

僅供參考,修復的mini_magick問題不會導致Rails的拿起了錯誤的Ruby版本是符號鏈接mogrify(而不是增加production.rb行):

$ sudo ln -s /usr/bin/mogrify /usr/local/bin/mogrify 

(大部分轉貼自我的GitHub issue response。)

1

確保通過捆綁在目錄中調用耙在您的Gemfile是:

bundle exec rake namespace:start

這將確保你的包寶石可用。

+0

對不起,我應該注意到,我確實嘗試了這一點,以及'bin/rake' - 都導致相同的錯誤信息 – Sam

相關問題