Specifically, in line 87 of Feather.java:
catch (Exception e) {
throw new FeatherException(String.format("Can't inject field %s in %s", field.getName(), target.getClass().getName()));
}
The caught exception is discarded. It would be preferable to set the caught exception as the cause by passing it in as the second argument to FeatherException.