Pipeline - load throws IOException instead of FileNotFoundException if file not found when run in slave

Issue

Pipeline load directive throws IOException instead of FileNotFoundException if file not found when run in slave.

Environment

Resolution

If using a try / catch block to determine the root cause of the exception, you need to unwrap the IOException to uncover the root cause.

Example:

node {
    try {
    load 'filethatdoesnotexist.ext'
    } catch(FileNotFoundException e) {
        // do something
    } catch(IOException e) {
        if(e.getCause() instanceof FileNotFoundException) {
            // Inner exception is FileNotFoundException
            // do something
        } else {
            // do something else
        }
    }
}

References

Have more questions?

0 Comments

Please sign in to leave a comment.