Using such generic exception prevents calling methods from handling differently each kind of error.

Noncompliant Code Example

public void foo(String bar) throws Throwable { // Noncompliant
  throw new RuntimeException("My Message");    // Noncompliant
}

Compliant Solution

public void foo(String bar) {
  throw new MyOwnRuntimeException("My Message");
}

Exceptions

Generic exceptions in signature of overriding methods are excluded

@Override
public void myMethod() throws Exception {...}