JRuby 1.6.1字符串函数在1.9模式下

时间:2011-06-03 20:24:13

标签: jruby jrubyonrails

我刚刚升级到jruby 1.6.1,当我在1.9模式下运行时,以下函数在遇到某些字符时失败。该功能的工作是去除不需要的字符以及前导和尾随字符。我将以下函数添加到字符串类:

class String
  def strip_noise()
    return if empty? 
    self.force_encoding('utf-8').mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').to_s().strip()
  end
end

我有以下测试导致错误发生:

  def test_odd_characters()
    assert_equal("", "        \xC2\xA0".strip_noise())
  end

我得到一个Java :: JavaLang :: NegativeArraySizeException:当我运行测试时。

这是jruby的错误还是任何人都可以帮助我找到更好的解决方案?

1 个答案:

答案 0 :(得分:0)

我很确定这是一个jruby bug,因为它适用于普通的ruby 1.9.2,我创建了以下jira