Ruby on rails Puma和JRuby的编码问题

Ruby on rails Puma和JRuby的编码问题,ruby-on-rails,ruby,jruby,puma,Ruby On Rails,Ruby,Jruby,Puma,当我将puma添加到Gemfile时,现在每次运行rails生成器或rails服务器时都会出现此错误: 合成错误: /Users/admin/.rvm/gems/jruby-1.7。19@benchmark_jruby_puma/gems/puma-3.1.0-java/lib/puma/const.rb:103: 无效的多字节字符(US-ASCII) 没有美洲狮,一切都很好。如何解决此问题?包含非ASCII字符,但文件不包含编码头。JRuby 1.7的默认设置是将源代码视为ASCII编码,因此

当我将
puma
添加到
Gemfile
时,现在每次运行rails生成器或rails服务器时都会出现此错误:

合成错误: /Users/admin/.rvm/gems/jruby-1.7。19@benchmark_jruby_puma/gems/puma-3.1.0-java/lib/puma/const.rb:103: 无效的多字节字符(US-ASCII)

没有美洲狮,一切都很好。如何解决此问题?

包含非ASCII字符,但文件不包含编码头。JRuby 1.7的默认设置是将源代码视为ASCII编码,因此结果就是您看到的错误。更高版本的Ruby默认为UTF-8

1.7仍然支持旧的
-K
命令行选项,因此您可以使用它来设置源代码编码。您将需要
u
选项(即
-Ku
)。您可能需要使用
RUBYOPT
环境变量将其用于Rails

您可以通过从命令行开始分别为每个命令指定环境变量,例如:

$ RUBYOPT=-Ku rails server
或者,您可以将其导出,这样就不需要继续重新键入:

$ export RUBYOPT=-Ku
$ rails server