我使用的是ruby 1.9.2和rails 3.1。我正在尝试让annotate 2.4.0正常工作,但是我没有遇到任何错误。我试着卸载并重新安装,但没有帮助。请看跳转后的线轴。任何关于如何进行的建议都会有所帮助。
~/myapps/testapp/app>sudo gem install annotate
Fetching: annotate-2.4.0.gem (100%)
Successfully installed annotate-2.4.0
1 gem installed
~/myapps/testapp/app>bundle exec annotate -e -p before
/Users/mymachine/.rvm/gems/ruby-1.9.2-p290/gems/annotate-2.4.0/bin/annotate:61:in block (2 levels) in <top (required)>': undefined methodeach' for nil:NilClass (NoMethodError)
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1308:in call'
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1308:inblock in parse_in_order'
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1264:in catch'
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1264:inparse_in_order'
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1258:in order!'
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1349:inpermute!'
from /Users/mymachine/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/optparse.rb:1370:in parse!'
from /Users/mymachine/.rvm/gems/ruby-1.9.2-p290/gems/annotate-2.4.0/bin/annotate:8:in'
from /Users/mymachine/.rvm/gems/ruby-1.9.2-p290/bin/annotate:19:in load'
from /Users/mymachine/.rvm/gems/ruby-1.9.2-p290/bin/annotate:19:in'发布于 2011-12-18 02:07:51
-e标志需要参数,而您还没有给出参数。
您可以通过查看堆栈跟踪来判断这一点,错误是nil没有each方法。由于错误是在optparse文件中引发的,因此可以推断optparse试图迭代某个不存在的选项。当然,这会导致出现这样的annotate -h:"-e,--排除测试,fixture不注释fixture、测试文件或两者都有“。
https://stackoverflow.com/questions/8546263
复制相似问题