2011-05-11 169 views
1

我运行ruby 1.9.2p0轨道上的windows操作系统与rubymine 3.1.1。红宝石问题(bug) - 在耙宝石

我用它几个星期。

几天ago-我试图从运行的RubyMine我的项目和控制台的通知是: “找不到耙0.8.7在任何来源

进程退出代码为7完成”

我GOOGLE了它,我发现在几个地方引用这个问题。最经常重复的解决方案是删除非版本化的“rake.gemspec”文件。 我试过这个解决方案,但问题没有解决,它仍然说相同的通知。

我试图解决这个问题好几天!!! 请帮助我,如果你知道如何!

非常感谢先进!

+0

JetBrains支持什么? – Zabba 2011-05-11 06:38:42

+0

'gem list | grep rake'说什么? – harald 2011-05-11 06:54:09

+0

hi zabba-我在JetBrains的支持中寻找这个问题,但还没有找到解决这个问题的方法 – 2011-05-11 08:11:55

回答

1

阿萨夫, 我有几个小时的时间无奈的处理类似的问题。解决方案可能是一个追查的挑战,因为有许多原因可能会导致问题。我自己并不是专家,但我会尝试传授我学到的一些东西。

首先,你提到了关于Rake的错误,但没有提到你试图实际运行Rake。在加载RubyMine或特别是在运行Rake命令后,您是否收到错误消息?

接下来,如果您正在运行Rake命令并发生错误,您应该注意,在哪里运行该命令非常重要。例如,如果像我一样打开终端窗口并从终端运行Rake命令,则不一定会得到与从RubyMine本身运行Rake相同的结果。当我开始使用RubyMine时,其原因并不是不言而喻,但我认为这归结于以下几点:

RubyMine中的Ruby SDK和Gem首选项应该确定您从RubyMine中获得哪些类型的依赖关系错误。所以你可以先看看那里是否有依赖错误。接下来,我猜你正在运行RVM?请注意,完全可以在RubyMine中使用一个RVM(检查SDK中的Ruby解释器和Gems首选项以查看您正在使用哪一个)以及终端中完全不同的RVM(命令“RVM info”应该给你你使用的版本)。如果这些不匹配,即使在运行完全相同的命令时,RubyMine和Terminal也会得到不同的结果。

我对这个问题的解决方案是仔细确保两个环境匹配。我想你可以通过输入“rvm default”加上你想要默认的版本来设置RVM默认值。这样,您的终端和RubyMine环境都可以匹配。

最后,请注意,RubyMine允许同时安装多个版本的Gem。因此,如果您遇到由于某些依赖项需要特定版本而导致Gem失败的错误,则可以让RubyMine安装多个版本。通过SDK管理器执行此操作,选择Gem,然后单击“选择版本”。

希望这些信息中的一部分适用于您的问题。我有点做过霰弹枪的方法,因为我不确定是什么原因导致你的错误,但也许有些可以让你走上正确的道路。最后要注意的是:如果需要的话,使用你的Gemfile来控制Gem版本。我花了好几个小时的时间对破坏的依赖关系感到沮丧,只是发现休息的原因是我告诉RubyMine更新所有Gems到最新版本。一个特定的Gem的最新版本不一定向后兼容以前的版本,并盲目更新Gems可能会导致巨大的问题。

1

阿萨夫,你应该删除rake.gemspec和运行gem install rake得到问题的固定

+0

感谢您的重播。但我试过这个解决方案 - 我删除了rake.gemspec文件并运行'gem install rake'命令,终端通知我rake-0.8.7已成功安装(及其ri和RDoc文档),但问题依然存在...... – 2011-05-11 08:27:04