尝试在jruby 1.9模式下使用终端运行rails应用程序。我尝试了以下方法,但遇到了一系列错误:
$ jruby --1.9 script/rails s
LoadError: load error: /Users/aaronmcleod/Documents/sojourner/config/boot -- java.lang.ClassCastException: org.jruby.RubyObject cannot be cast to org.jruby.RubyException
require at org/jruby/RubyKernel.java:1047
require at /Users/aaronmcleod/.rvm/rubies/jruby-1.6.1/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29
(root) at script/rails:5
答案 0 :(得分:2)
这是由新的YAML解析器引起的,它有一些内部错误。检查你的yaml文件,对于任何符号,你必须用字符串替换它们。就我而言,它是:
--- a/config/locales/de.yml
+++ b/config/locales/de.yml
@@ -13,7 +13,7 @@ de:
abbr_day_names: [So, Mo, Di, Mi, Do, Fr, Sa]
month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember]
abbr_month_names: [~, Jan, Feb, Mär, Apr, Mai, Jun, Jul, Aug, Sep, Okt, Nov, Dez]
- order: [ :day, :month, :year ]
+ order: [ "day", "month", "year" ]
time:
formats:
另请参阅相关错误报告:JRUBY-5802
您可以通过迭代所有文件并尝试解析它们来确定错误的yaml文件:
jruby --1.9 -ryaml -e 'ARGV.each {|file| puts file; YAML.load_file(file) }' $(find . -name '*.yml')