Using such generic exception prevents calling methods from handling differently each kind of error.
public void foo(String bar) throws Throwable { // Noncompliant throw new RuntimeException("My Message"); // Noncompliant }
public void foo(String bar) { throw new MyOwnRuntimeException("My Message"); }
Generic exceptions in signature of overriding methods are excluded
@Override public void myMethod() throws Exception {...}