我正在尝试配置Rubymine 6.3.3以使用我的流浪虚拟机中的Ruby SDK和gem。
Rubymine(至少6.3.3)内置了对此的支持。要进行设置,我会执行以下操作:
$ which ruby
验证)下载宝石时,它会递归地越来越深入/ usr / bin / X11 /目录,如:
在该循环中陷入困境一段时间之后,它会陷入下载各种宝石的循环中,并创建一个文件夹(我无法看到哪个文件夹,因为它闪烁得太快)。
它最终以“错误复制宝石”对话结束,说明:
Could not copy "sftp://127.0.0.1:2222/usr/bin/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/x86_64-linux-gnu-gcc-nm" to "file:///home/billy/.RubyMine60/system/ruby_stubs/-828640210/170586877/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/X11/x86_64-linux-gnu-gcc-nm".
单击“确定”后,它会再次尝试下载宝石,并在再次单击“确定”第二次出现相同的错误消息后退出,然后只显示我的新“Ruby SDK and Gems”配置没有宝石。
虚拟机安装了以下版本:
vagrant@rails-dev-box:/vagrant $ ruby -v
ruby 2.2.4p230 (2015-12-16 revision 53155) [x86_64-linux-gnu]
vagrant@rails-dev-box:/vagrant/ $ bundle -v
Bundler version 1.11.2
vagrant@rails-dev-box:/vagrant/ $ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 2.4.5.1
- RUBY VERSION: 2.2.4 (2015-12-16 patchlevel 230) [x86_64-linux-gnu]
- INSTALLATION DIRECTORY: /var/lib/gems/2.2.0
- RUBY EXECUTABLE: /usr/bin/ruby2.2
- EXECUTABLE DIRECTORY: /usr/local/bin
- SPEC CACHE DIRECTORY: /home/vagrant/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /var/lib/gems/2.2.0
- /home/vagrant/.gem/ruby/2.2.0
- /usr/share/rubygems-integration/2.2.0
- /usr/share/rubygems-integration/all
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /usr/local/sbin
- /usr/local/bin
- /usr/sbin
- /usr/bin
- /sbin
- /bin
- /usr/games
- /usr/local/games
为什么Rubymine不能正确配置这些宝石?
答案 0 :(得分:0)
问题是来自/usr/bin/X11
=>的符号链接Ubuntu有/usr/bin/
。这导致RubyMine沿递归/usr/bin/X11/X11/X11/"
路径发送,试图找到宝石,最终导致错误。
由于OS仅通过Vagrant用作虚拟机,因此我删除了/ usr / bin / X11符号链接。这允许RubyMine找到宝石,一切都按预期工作。
注意:此符号链接存在valid reason。这个答案只是7.0之前的RubyMine版本的解决方法,就像这个peculiar bug was fixed in RubyMine 7.0。