2012-02-06 1 views
8

IRB寄付「NoMethodError NilClass:nilのための未定義のメソッド `書き込み」」のすべてのコマンド私はIRBから現在のRubyのバージョンを取得しようとしていますが、そのは私に、このエラーを与えて

>> RUBY_VERSION 
NoMethodError: undefined method `write' for nil:NilClass 
    from /usr/local/lib/ruby/1.9.1/irb.rb:311:in `printf' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:311:in `output_value' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:160:in `block (2 levels) in eval_input' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:273:in `signal_status' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:156:in `block in eval_input' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:243:in `block (2 levels) in each_top_level_statement' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `loop' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `block in each_top_level_statement' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `catch' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `each_top_level_statement' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:155:in `eval_input' 
    from /usr/local/lib/ruby/1.9.1/irb/ext/multi-irb.rb:166:in `block (2 levels) in irb' 
    from /usr/local/lib/ruby/1.9.1/irb/ext/multi-irb.rb:165:in `catch' 
    from /usr/local/lib/ruby/1.9.1/irb/ext/multi-irb.rb:165:in `block in irb' 
Maybe IRB bug! 

ruby -vruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0]

を示し

私はMac OS X Lion

UPDATE使用しています:実際には、それがすべてでは何も実行されません を。

>> a = 'Hello, World!' 
NoMethodError: undefined method `write' for nil:NilClass 
    from /usr/local/lib/ruby/1.9.1/irb.rb:311:in `printf' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:311:in `output_value' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:160:in `block (2 levels) in eval_input' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:273:in `signal_status' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:156:in `block in eval_input' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:243:in `block (2 levels) in each_top_level_statement' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `loop' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `block in each_top_level_statement' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `catch' 
    from /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `each_top_level_statement' 
    from /usr/local/lib/ruby/1.9.1/irb.rb:155:in `eval_input' 
    from /usr/local/lib/ruby/1.9.1/irb/ext/multi-irb.rb:166:in `block (2 levels) in irb' 
    from /usr/local/lib/ruby/1.9.1/irb/ext/multi-irb.rb:165:in `catch' 
    from /usr/local/lib/ruby/1.9.1/irb/ext/multi-irb.rb:165:in `block in irb' 
Maybe IRB bug! 

UPDATE#2:(ティン・マン用) 使用は/ usr/binに/ IRB、私は

>> 5+5 
NoMethodError: undefined method `write' for nil:NilClass 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:310:in `printf' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:310:in `output_value' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:159:in `eval_input' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:271:in `signal_status' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:155:in `eval_input' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb/ruby-lex.rb:244:in `each_top_level_statement' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb/ruby-lex.rb:230:in `loop' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb/ruby-lex.rb:230:in `each_top_level_statement' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb/ruby-lex.rb:229:in `catch' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb/ruby-lex.rb:229:in `each_top_level_statement' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:154:in `eval_input' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:71:in `start' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:70:in `catch' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/irb.rb:70:in `start' 
    from /usr/bin/irb:13 
Maybe IRB bug!! 
+0

'ruby -v'は、コマンドラインで実行すると何を表示しますか?あなたはどのOSを使用していますか?あなたの 'irb'はまったく動作しますか? .irbrcファイルがありますか? –

+0

は私の質問をより多くの情報で更新しました。 – 0xSina

+0

あなたは正しいですが、まったく動作しません。 – 0xSina

答えて

1

を取得ルビーAppleのインストールを取得する/usr/bin/irbを試してみてください。

Leopardの手順を使ってLionにRubyをインストールすることはお勧めできません。言語とOSの詳細が変化することを覚えておく必要があります。

"Building Ruby 1.9.3 on Lion with Xcode 4.2 using ./configure --with-gcc=clang"の情報は役立ちます。また、 "Error installing 1.9.3 with RVM on Lion"にはXCodeに関する有益な情報があります。

+0

どういう意味ですか? – 0xSina

+0

私は、コマンドラインでそれを打ち込み、それが何をしているのか見てみることを意味します。 AppleはRubyをあらかじめインストールしており、 '/ usr/bin/irb'はIRBのインスタンスです。それがうまくいくならば、1.9.3のインストールがうまくいけば、あなたは別の指示に従う必要があります。 –

+0

Ah。ただした。私は長い間違いをする。新しいログで質問を更新します。 – 0xSina

関連する問題