RubyMine 7远程调试没有此类文件或目录错误

时间:2015-04-17 17:35:07

标签: ruby-on-rails ruby vagrant remote-debugging rubymine

我正在尝试使用RubyMine调试流浪汉机器上的rails应用程序。我通过设置设置远程ruby sdk。我安装了必要的gems进行调试(ruby-debug-base,ruby-debug-ide)。当它尝试启动调试器时,它在调试器控制台上提供以下输出:

/<remote_path_to_ruby>/bin/ruby -e 'at_exit{sleep(1)};$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)' /<remote_path>/gems/ruby-debug-ide-0.4.29/bin/rdebug-ide --disable-int-handler --evaluation-timeout 10 --rubymine-protocol-extensions --port 33401 --dispatcher-port 52861 -- /<local_path>/railsapp/script/rails server -b 127.0.0.1 -p 3000 -e development
    bash: line 0: cd: /<local_path>/railsapp: No such file or directory
    /<local_path>/railsapp/Gemfile not found

是流浪汉机器的路径, 并且是我的主机。它有railsapp目录和Gemfile。

有什么想法吗? 感谢

2 个答案:

答案 0 :(得分:0)

我弄明白了这个问题。 您需要为本地项目根目录添加映射 - &gt;远程项目根。您可以在调试配置中添加它。 它解决了我的问题。

答案 1 :(得分:0)

我在 RubyMine 2020 中使用 WSL2 时遇到了同样的错误。上面接受的答案为我指明了正确的方向。我也在 WSL 中使用 rbenv

在当前版本的 RubyMine 中没有“远程解释器主机”配置(至少不是 WSL),所以我必须在“Ruby SDK 和 Gems”部分定义“项目路径映射”,为我的 ruby​​ 解释器,通过单击该文件夹图标:

screenshot

我指定了这样的映射(将 username 替换为您自己的用户文件夹,并将 Ubuntu-20.04 替换为您的发行版):

Local Path
//wsl$/Ubuntu-20.04/home/username

Remote Path
/home/username

这是有效的,因为 .rbenv 和我的项目目录都在我的 home/username 文件夹中。否则,我必须为项目和 .rbenv 指定其他映射。

如果没有这个手动映射,不知道为什么它不能开箱即用。也许我之前在我的项目中弄乱了一些配置,它可以在新版本中使用。无论如何,这为我解决了问题,希望能帮助其他人通过相同的错误文本进行搜索。