Как мне переопределить существующие методы Java в JRuby? Прямо сейчас можно переопределить методы Ruby. Я спрашиваю это, потому что, когда вы пишете что-то вроде
include Java
puts java.io.File.separator
и исследовать java, io и File, получается, что java и io имеют тип "ruby module", а File является "классом". Поэтому мне было интересно, можно ли написать что-то подобное и ожидать, что это сработает
module Java
module JavaIoType
class File
class << self
alias_method :old_sp, :separator
def separator(*args)
Kernel.puts caller
old_sp(*args)
end
end
end
end
end
Но это не так: (
Существует также аналогичный вопрос для clojure. Мне просто интересно, будет ли другой ответ на JRuby.
Я знаю, что это немного натянуто, но я все равно спрашиваю.