4

我无法让服务器以调试模式启动:

即使我安装了所有正确的 gem,服务器也拒绝启动。

$ gem install ruby-debug
ERROR:  Error installing ruby-debug:
       rbx-require-relative requires Ruby version ~> 1.8.7.

这不起作用,其他帖子说使用 ruby​​-debug19:

David@DAVID-PC /c/triton6 
$ gem install ruby-debug19
Successfully installed ruby-debug19-0.11.6
1 gem installed
Installing ri documentation for ruby-debug19-0.11.6...
Installing RDoc documentation for ruby-debug19-0.11.6...

David@DAVID-PC /c/triton6 
$ rails server --debug
=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
You need to install ruby-debug to run the server in debugging mode. With gems, use 'gem install > ruby-debug' 
Exiting

知道该怎么做吗?

这是我的 Gemfile:

source 'http://rubygems.org'

gem 'rails', '3.1.3'

# Bundle edge Rails instead:
# gem 'rails',     :git => 'git://github.com/rails/rails.git'

gem 'sqlite3'
gem 'ruby-debug19'
gem 'execjs'
gem 'ruby-debug-ide'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails',   '~> 3.1.5'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'ruby-debug19', :require => 'ruby-debug'

group :test do
# Pretty printed test output
gem 'turn', '0.8.2', :require => false
end
4

6 回答 6

4

确保你gem "ruby-debug19", :require => 'ruby-debug'的 Gemfile 中有,然后运行bundle install​​:)

编辑:添加了:require =>我之前错过的重要声明

于 2011-12-02T03:58:05.307 回答
3

在 Aptana Studio 3 中进行 ruby​​ 调试时,我遇到了同样的问题(以及更多问题)。我的设置和使其工作的过程:

  • Mac OS X 狮子 10.7.2
  • Aptana Studio 3(内部版本 3.0.8.201201201658)
  • 使用 rvm,在我的项目工作目录中,我有一个 .rvmrc 说明:

    rvm use ruby-1.9.3-p0@mygemset
    

为了在 Aptana Studio 中进行 ruby​​ 调试,我现在有以下设置

  • 在我的 Gemfile 结束时,我有:

    gem "ruby-debug-base19x", "0.11.30.pre10"
    gem 'ruby-debug-ide'
    

请注意,我没有使用 ruby​​-debug-ide19 和 ruby​​-debug19,Aptana Studio 只是拒绝使用这个 gem。无论如何,它总是选择 ruby​​-debug-ide 0.4.16。

我也没有使用 ruby​​-debug-base19,而是使用 ruby​​-debug-base19x。

  • 要构建最新的 ruby​​-debug-base19x,请确保指定正确的 ruby​​ 上下文(包括):

    rvm 1.9.3-p0@mygemset do gem install --pre ruby-debug-base19x -- --with-ruby-include=/Users/Freddy/.rvm/src/ruby-1.9.3-p0
    

丢失 rvm ...在不使用 rvm 时执行此操作。

  • 不要忘记从您的项目工作目录进行捆绑安装(或捆绑更新)。在我的终端中,当我输入“Bundle list”时,对于提到的 gem,列出了以下版本:

    linecache19 (0.5.13)
    ruby-debug-base19x (0.11.30.pre10)
    ruby-debug-ide (0.4.16)
    
  • 重要提示:如果您有 linecache19 版本 0.5.12 而不是 .13,请从RubyForge 下载最新版本: ruby​​-debug19: Project Filelist。我将它下载到我的 ~/Downloads 文件夹中,因此在我的 rvm 上下文中构建和安装这个 gem 如下:

    rvm 1.9.3-p0@mygemset do gem install ~/Downloads/linecache19-0.5.13.gem -- --with-ruby-include=/Users/Freddy/.rvm/src/ruby-1.9.3-p0
    

如果您需要安装 linecache19 版本 0.5.13,不要忘记再次运行 'bundle update'。

  • 毕竟,我在 ide 中运行调试器时遇到的最后一个问题(及其解决方案)如下所述:

Aptana 3 ruby​​ 调试器 - DebugThread 循环中的异常:未定义的方法“is_binary_data?”

将第一个答案中提供的代码放在 xml_printer.rb 中的“模块调试器”语句上方。

享受!

——弗莱迪

关于构建 ruby​​-1.9.3-p0 的注释。这有点超出了问题的范围,但是由于构建它(也)在这里是一个痛苦的提示。编译 ruby​​-1.9.3.-p0 给出了多个与 openssl 相关的编译器错误。最好的办法是在rvm环境中安装openssl-0.9.8n包:

  • 安装 XCode 4.2 后,首先需要将以下内容放入 .rvmrc 或 .profile :

    export CC=/usr/bin/gcc-4.2
    

不要启用它,例如 $ source ~/.rvmrc

于 2012-02-13T12:04:36.837 回答
1

我想答案已经在你的 Gemfile 中了。

gem 'ruby-debug19', :require => 'ruby-debug'
于 2011-12-02T04:54:01.230 回答
1

ruby-debug 坏了。该项目有一个新的分支,现在正在被广泛使用。这是相同的代码,只是固定的。这个新版本现在是核心 ruby​​ on rails 项目中使用的版本。

这是新的宝石: https ://github.com/cldwalker/debugger

要使用它,只需将其包含在您的 gem 文件中

gem 'debugger'

这是一个链接到它被拉入 Rails 的提交:

https://github.com/matschaffer/knife-solo/pull/38

于 2012-05-07T13:21:48.173 回答
0

使它对我有用的是:

sudo gem install ruby-debug19
gem install linecache19
gem install ruby-debug-base19
bundle update
rails server -u
于 2012-03-02T21:01:48.040 回答
0

这是我的灵魂。我跟着这篇文章没有成功。:(

我将以下 gem 添加到我的 Gemfile 和 ==>> 运行$bundle install...工作

=添加到 Gemfile=> gem 'ruby-debug-ide', '~> 0.4.22'

Installing ruby-debug-ide 0.4.22
Using sass 3.2.19
Using sass-rails 4.0.3
Using sdoc 0.4.0
Using spring 1.1.3
Using sqlite3 1.3.9
Using turbolinks 2.2.2
Using uglifier 2.5.1
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.
-SVE1411EGXB:~/Desktop/myapp$ 
于 2014-07-05T02:39:04.840 回答