【问题标题】:Encoding issues with Puma and JRubyPuma 和 JRuby 的编码问题
【发布时间】:2016-06-28 02:31:13
【问题描述】:

当我将 puma 添加到 Gemfile 时,现在每次运行 rails generator 或 rails server 时都会出现此错误:

语法错误: /Users/admin/.rvm/gems/jruby-1.7.19@benchmark_jruby_puma/gems/puma-3.1.0-java/lib/puma/const.rb:103: 无效的多字节字符(US-ASCII)

没有puma 一切正常。如何解决这个问题?

【问题讨论】:

    标签: ruby-on-rails ruby jruby puma


    【解决方案1】:

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

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

    您可以通过以它开头的行来为每个命令单独指定环境变量,例如:

    $ RUBYOPT=-Ku rails server
    

    或者您可以将其导出,这样您就无需重复输入:

    $ export RUBYOPT=-Ku
    $ rails server
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多