我很难让RubyMine正确看到我的宝石。我看到的问题是编辑器屏幕无法识别任何宝石的任何类,例如MyClass< ActiveRecord :: Base,我看到一个黄色警告:Cannot find 'ActiveRecord'
。
我正在使用bundler,我为每个项目配置了我的宝石并安装在/some/project_dir/.bundle/gems
我已经看到了这个错误:http://youtrack.jetbrains.com/issue/RUBY-14542,所以我试图通过按如下方式启动RubyMine来解决这个问题:
GEM_HOME="/some/project_dir/.bundle/gems/ruby/1.8" mine
我的RubyGems环境看起来是正确的 - 这是相关的摘录:
....
Sdk Gem paths:
~/.rbenv/versions/ree-1.8.7-2012.02/lib/ruby/gems/1.8/gems
/some/project_dir/.bundle/gems/ruby/1.8/gems
~/.rbenv/versions/ree-1.8.7-2012.02/lib/ruby/gems/1.8/bundler/gems
/some/project_dir/.bundle/gems/ruby/1.8/bundler/gems
Gems used for 'project':
rails (bundled)
/some/project_dir/.bundle/gems/ruby/1.8/bundler/gems/rails-857c6ee62c05
rspec (bundled(1.3.2))
/some/project_dir/.bundle/gems/ruby/1.8/gems/rspec-1.3.2
...
所以它似乎正在使用宝石的正确路径:
/some/project_dir:ls -1 /some/project_dir/.bundle/gems/ruby/1.8/gems
Ascii85-1.0.1
Ascii85-1.0.2
GeoRuby-1.3.3
abstract-1.0.0
....
我看到Ruby SDK和Gems首选项窗格下列出的gem,但编辑器窗格无法识别其中的任何文件。
This seems like a similar issue,但即使使用指定的解决方法,我仍然会遇到问题。
更新:我从rails 2.3升级到rails 3.0(通过升级Gemfile并运行bundle install),我现在能够在编辑器中看到rails源,但没有其他宝石。使用以下命令安装Rails:github =>指令:
gem 'rails', :github => 'rails/rails', :branch => '3-0-stable'
所以我认为这可能与它有关。
Cross发布到此错误:http://youtrack.jetbrains.com/issue/RUBY-14542
答案 0 :(得分:5)
我遇到了类似的问题,修复程序结果是删除了ruby SDK(在preferences-> Ruby SDK和Gems中),然后将其添加回来。这使得“语言水平”从2.1升到2.2,并允许Rubymine在ruby 2.2.0 / gems中找到捆绑的宝石。我不知道Rubymine如何设法为我的ruby-2.2.1-p85设置语言级别为2.1,但这是一个难以追查的微妙问题,所以我想我会分享以防其他人体验它。我只是通过使用非常有用的工具 - >显示宝石环境来发现它,这可能有助于排除类似问题。
答案 1 :(得分:0)
也许你应该在RubyMine设置菜单中设置正确的Ruby。
转到“文件” - > “设置” - > “Ruby SDK and Gems”(在左侧列表中)并选择正确版本的Ruby。
答案 2 :(得分:0)
在RubyMine for Mac上,仍然遇到了与未找到宝石相同的问题。 而不是File中的默认设置,您需要更改: RubyMine =>首选项=>语言和框架=> RubySDK和Gems
然后选择正确的版本。
答案 3 :(得分:0)
我有一个类似的问题。 Rbenv使用的是Ruby的旧版本,而不是RubyMine的。
我必须使用Rbenv设置本地版本,然后在RubyMine中使用相同版本。这意味着在终端窗口中运行bundle install
会将gem安装到正确的“ gem set”中
要设置Rbenv版本:
rbenv local 2.5.1