【问题标题】:RubyMine: Rails server launcher wasn't found in the projectRubyMine:项目中未找到 Rails 服务器启动器
【发布时间】:2015-05-09 15:25:34
【问题描述】:

将现有项目导入 RubyMine 后,我在运行/编辑配置时遇到“项目中未找到 Rails 服务器启动器”。

我已经检查了这个Cannot start the debugger in Rubymine. Rails server launcher wasn't found in project,但删除 .idea 目录并重新打开没有帮助。

我可以在终端中成功rails server 并且rails 服务器运行。所以我猜这很可能与 RubyMine 相关。

谢谢, 艾伦

【问题讨论】:

  • 我发现自从我迁移到新电脑并升级到最新的 Rubymine 之后,我通常必须进入首选项 -> 语言和框架 -> Ruby SDK 和 Gems,并设置我的首选红宝石版本。在我设置之前,Rubymine 将使用旧版本的 Ruby。这些天我需要深入挖掘并在 Rubymine 中设置我的默认值。
  • @Beartech 你是对的。但是我已经将该配置设置为适用于我的 ruby​​ 版本...rails 服务器启动器丢失问题仍然存在...令人沮丧...也许我应该在 JetBrain 社区中询问
  • 当你在命令行进入文件夹并执行ruby -v时,版本是否与你在Rubymine中设置的版本匹配?
  • @Beartech 我相信是的。 ruby -v 显示 ruby -v ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]。与 RubyMine 中的 ruby​​ 版本匹配。
  • 如果您在 JetBrains 社区找到答案,我希望您能回来为未来的用户回答您自己的问题。我会投票赞成。

标签: ruby-on-rails ruby rubymine


【解决方案1】:

最简单的修复方法:

  1. 关闭项目
  2. 从项目文件夹中删除 .idea 文件夹
  3. 打开项目

宾果游戏!

注意:此解决方法似乎不再适用于 2017.2。见RUBY-20144

【讨论】:

  • 这样做了,但不幸的是它声明Rails server launcher projects/acme/spec/dummy not found in the project
  • 听起来很荒谬,但重新启动 OSX 使其工作。我拒绝了,但我旁边的人坚持。我做到了,没有问题。当“重新启动计算机”是解决方法时,我讨厌它。
  • 虽然这可行,但它也会破坏您可能拥有的任何其他运行配置,因此请确保先备份! :)
  • 这个答案应该被认为是最正确的。像魅力一样工作:)
  • 谷歌搜索半小时后发现了这个......并为我工作
【解决方案2】:

我从 RubyMine 升级到 IntelliJ Ultimate IDE 2017.1.5 时遇到了同样的错误“运行配置错误:在项目中找不到 Rails 服务器启动器”。我在 Rails 5.0.2 中使用 Ruby v2.4.0。

我花了一整天的时间来解决这个问题,所以我写了一个详细的解释并附有截图以指导其他人。

当我尝试从 IntelliJ 中运行或调试我的 Rails 服务器时发生这种情况。 其他解决方案也没有解决该错误。我尝试删除我的 .idea/ 文件夹,尝试不同的 Ruby 或 Rails 版本(即 Ruby v2.3.0 或最新的 Rails 5.1.2),甚至从头开始一个全新的项目。但是我可以使用带有rails s 的终端(在IDE 之外)很好地运行Rails 服务器。

解决方法:

首先我打开 Run > Edit Configurations"Choose SDK from module" 没有任何项目模块可供从下拉列表中选择,所以我有创建一个如下:

我去了文件>项目结构

然后我点击Modules,点击“+”图标,选择“Import Module”

然后我导航到我的 Rails 项目的根目录“'/Users/my_username/code/apps/_murmur/skag_server_rails”并单击打开,显示如下。

然后我选择了“从现有资源创建模块”并点击了“下一步”,它显示了以下内容,并在我的 Rails 项目根目录旁边显示了一个蓝色复选框它找到的目录,所以我再次单击“下一步”

然后它显示以下窗口,我点击了“完成”

我现在已经完成了将我作为模块工作的 Rails 项目的导入,它显示了以下内容,所以我点击了 “Ok”,就像以前一样现在准备好再次尝试运行我的 Rails 服务器:

所以我回到Run > Edit Configurations窗口并点击“Rails > skag”,现在我可以使用“Choose SDK from module” 因为现在我刚刚创建的下拉列表中有我的 "skag_server_rails" 模块,并且没有明显的错误,如下所示:

然后我可以点击确定来保存运行/编辑配置

然后我能够运行服务器 Run > Run,它显示:

然后我就可以在浏览器open http://localhost:3000 中成功打开 Rails 应用程序了

但是当我尝试 Run > Debug 以便我可以使用断点进行调试时,它给了我以下错误:

我通过在终端(IDE 外部)中运行以下命令解决了这个问题:

gem install debase --pre
gem install ruby-debug-ide

然后我终于可以运行 Run > Debug,它允许我触发断点,如下所示:

重要提示:

我最初采用的方法并没有最终修复涉及选择使用“运行”>“编辑配置”窗口中的“使用其他 SDK”将我的 Ruby Gemset 加载到调试配置中的错误(而不是使用模块)。

更新:我最近在 2017 年 9 月 2 日再次遇到了同样的错误,并按照以下步骤克服了它:

  • 转到菜单 > 文件 > 项目结构 > 项目设置 > 模块 > 点击“+”并选择“新建模块”
  • 从左侧列表中选择“Ruby on Rails”
  • 选择“Module SDK”标签你的“RVM:ruby-2.4.1 []”
  • 单击“Rails 版本”标签“安装 Rails Gem...”下拉菜单
    • 选择一个 Rails 版本供其下载并等待(即 5.0.0)
    • 不要选择导致工具提示“此版本不完全支持”出现在下方的 Rails 版本(即选择 Rails 版本 >5.1.2 会导致这种情况发生)
  • 点击“Rails 版本”,从下拉列表中标记已完成下载的版本(即 5.0.0)
  • 输入“../”的“工作目录”标签值
  • 输入“模块名称”(即 videotube-5.0.0)
  • 点击“应用”和“保存”

  • 转到菜单 > 运行 > 编辑配置

    • 更改任何不指向应用根文件夹的目录
  • 转到菜单 > 运行 > 调试

【讨论】:

  • 现在是 2020 年,使用 IntelliJ 2020.1.1 并且 bug 仍然存在 - 默认情况下,Rails 项目没有有意义地导入并且无法运行。这个攻略有帮助!检测到所有 gem,gem 语句显示没有错误,并且可以启动 rails 服务器。谢谢!
  • 这个答案有帮助,谢谢。如果当您进入“导入模块”步骤时,它神秘地没有检测到routes.rb,我被告知删除node_modules 并尝试可能会解决。奇怪的错误,不知道为什么现在还没有修复
  • 虽然这并没有解决我的问题,但这是我在这个网站上见过的最详细、最好的答案。
【解决方案3】:

这对我有用

  • 删除 .idea 文件
  • 使缓存失效并重启ide

【讨论】:

  • 是的,当 Jetbrains 正在做一些你无法弄清楚的奇怪事情时,这通常是一件好事。
【解决方案4】:

我也遇到过同样的问题,我发现解决它的方法是在第一次使用 RubyMine 打开项目时正确定义项目的根文件夹。

据我所知,理想情况下,您应该通过将 RubyMine 指向项目的根文件夹来打开项目:

my-workplace/
|-- rails-project-name/  <-- point RubyMine here when openning
|   |-- app/
|   |-- bin/
|   |-- config/
|   |-- db/
|   |-- lib/
|   |-- log/
|   |-- public/
|   |-- test/
|   ...

【讨论】:

  • 谢谢,其中一个问题是rails引擎是根文件夹,而虚拟app通常位于spec/dummytest/dummy
【解决方案5】:

好的,这个 RubyMine 有一些严重的问题。我的一天从平静开始,然后以噩梦结束,这要归功于 RubyMine。我所做的只是 git checkout 到我的仓库的某个版本。好吧,当我这样做时,RubyMine 中的文件夹突然消失了。是的,这是第一个错误。我git checkout 8d4fbd1b5dfce0a3daa16896a603903a 然后我打开RubyMine,文件夹不见了!我关闭并重新打开。仍然没有文件夹。我重新启动计算机,仍然没有文件夹。

我必须转到项目 > 文件结构并删除模块。然后创建一个新模块。现在项目文件夹出现。但后来我得到了这个模糊的错误Rails server launcher wasn't found in the project。我不知道这意味着什么。我上网,他们说删除您项目中的.idea 目录。所以我这样做。现在我必须再次删除并重新创建模块。

这次它说“覆盖目录”,因为我有一个现有项目。我选择“是”,然后我打开项目,我的secrets.yml 不见了!现在我不得不使用我备份的 secrets.yml。然后终于成功了。

说真的,这一切只是因为我想签出一个特定的 git 提交?来吧。

更新 经过进一步调查,我明白发生了什么。关于 Ruby 插件,有三个关键的 Intellij Idea 文件:

/.idea/
MyProject.iml
/MyProjectGemset/

这三个文件不应该签入 git,并且应该在项目的不同分支中保持一致。您可能在项目中有另一个 *.iml。删除它并确保您在整个分支中使用相同的 .iml。

这两个文件与您的 SDK 相关:

 MyProject.iml
/MyProjectGemset/

此文件属于一般配置:

/.idea/

【讨论】:

    【解决方案6】:

    我的变体来解决同样的问题。

    创建新的运行配置,但使用“Ruby”模板而不是“Redmine”:

    Ruby 脚本 字段设置为您的 redmine rails bin 路径,脚本参数 设置为“server -b 127.0.0.1 -p 3000 -e developmentmen t" 例如。

    【讨论】:

      【解决方案7】:

      如果您在 Windows 上遵循 Artyom Blagoda 的解决方案并在 WSL (Ubuntu) 上安装了 ruby​​,您将遇到无法找到 ruby​​ 脚本 (rails) 的 wsl 路径 (\wsl$\Ubuntu) 的情况远程(Ubuntu)红宝石解释器。要使其工作,您需要在以下位置添加路径映射:

      设置 -> Ruby SDK 和 Gems -> 你的远程 ruby​​ 或 RVM -> 然后点击上面的文件夹图标,你会发现一个新的窗口放在那里:

      本地路径://wsl$/Ubuntu/PATH_TO_YOUR_RAILS_BIN


      远程路径:PATH_TO_YOUR_RAILS_BIN

      希望对你有所帮助;)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-03-23
        • 2013-10-15
        • 1970-01-01
        • 2023-04-05
        • 2017-01-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多