Inspectopedia Help

Identical 'catch' branches in 'try' statement

Reports identical catch sections in a single try statement.

Collapsing such sections into one multi-catch block reduces code duplication and prevents the situations when one catch section is updated, and another one is not.

Example:

try { doSmth(); } catch (IOException e) { LOG.error(e); } catch (URISyntaxException e) { LOG.error(e); }

A quick-fix is available to make the code more compact:

try { doSmth(); } catch (IOException | URISyntaxException e) { LOG.error(e); }

This inspection depends on the Java feature 'Multi-catches' which is available since Java 7.

Inspection options

Here you can find the description of settings available for the Identical 'catch' branches in 'try' statement inspection, and the reference of their default values.

Do not report catch blocks with different comments

Default: Selected

Inspection Details

Available in:

IntelliJ IDEA 2024.2, Qodana for JVM 2024.2,

Plugin:

Java, 242.SNAPSHOT

Last modified: 20 February 2024