我的groovy脚本有问题。我正在从registerFile读取内容,我想在找不到文件时捕获异常。然而,即使registerfile不存在,下面的函数也不会抛出异常,为什么?
我的代码的片段:
def registerFile
static void main(def args) {
Agent agent = new Agent()
agent.findSmth()
}
Agent() {
registerFile = new File(/path/toFile)
}
def findSmth() {
def s
try {
def lines = registerFile.readLines()
def numbers = lines.get(lines.size() - 1).findAll(/\d+/)*.toInteger()
s = numbers.get(numbers.size() - 1)
} catch (Exception e) {
println(e) //why not print that file doesn't exist?
} finally {
return s
}
}
答案 0 :(得分:0)
我假设上面的代码在代理类中。
只要对不存在的文件执行操作,就会抛出异常;所以你的catch语句应该捕获异常。
您确定在您提到的路径中不存在此类文件吗?