В скрипте метод получает параметр типа File и отправляет его в конструктор File. Это взрывается, потому что File не имеет конструктора, который принимает другой файл в качестве параметра.
Как я могу перехватить этот вызов и изменить параметр на parameter.absolutePath
?
Например:
def x = new File("some_file")
...
def meth(def param) {
def y = new File(param) // if param is of type File, this blows up
// and I'd like groovy's intercepting capabilities to invoke this instead
// def y = new File(param.absolutePath)
}
Если это невозможно, как я могу добавить этот конструктор:
File(File other) {
this(other.absolutePath)
}