Domanda

PMD and SonarQube a nice tools but I have problems trying to suppress PMD warnings.

We use Lombok a lot in our project, so many of the model classes have a: @SuppressWarnings("PMD.UnusedPrivateField") as an class-level annotations.

This works fine.

The problem is, that if I wan't to ignore one more rule, I would expect the following syntax: @SuppressWarnings(value = { "PMD.UnusedPrivateField", "PMD.SingularField" }) This looks like the correct syntax, also reading the implementation of the PMD annotation.

However, this seems not to works: None of the rules are now suppressed.

È stato utile?

Soluzione

I would have expected this format (without the "value ="):

@SuppressWarnings({"PMD.UnusedPrivateField", "PMD.SingularField"})

Similar format is working for me in PMD 5.1.3 (although Eclipse complains about them not being supported).

Altri suggerimenti

As @colbadhombre writes:

@SuppressWarnings({"PMD.UnusedPrivateField", "PMD.SingularField"})

does the trick.

Regarding Eclipse:
Open Window->Preferences->Java->Compiler->Errors/Warnings

  • "Unhandled token in '@SuppressWarnings':" can be set to Ignore
  • Likewise the "Unused '@SuppressWarnings' token" if the warnings are enabled
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top