
Inline adoc files when they are included exactly once. Also fix language tags because this inlining gives us better information on what language the code is written in.
48 lines
973 B
Plaintext
48 lines
973 B
Plaintext
== Why is this an issue?
|
|
|
|
Before Java 8 if you needed to use multiple instances of the same annotation, they had to be wrapped in a container annotation. With Java 8, that's no longer necessary, allowing for cleaner, more readable code.
|
|
|
|
|
|
*Note* that this rule is automatically disabled when the project's ``++sonar.java.source++`` is lower than ``++8++``.
|
|
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,java]
|
|
----
|
|
@SomeAnnotations({ // Noncompliant
|
|
@SomeAnnotation(..a..),
|
|
@SomeAnnotation(..b..),
|
|
@SomeAnnotation(..c..),
|
|
})
|
|
public class SomeClass {
|
|
...
|
|
}
|
|
----
|
|
|
|
|
|
=== Compliant solution
|
|
|
|
[source,java]
|
|
----
|
|
@SomeAnnotation(..a..)
|
|
@SomeAnnotation(..b..)
|
|
@SomeAnnotation(..c..)
|
|
public class SomeClass {
|
|
...
|
|
}
|
|
----
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
=== Message
|
|
|
|
Remove the XXX wrapper from this annotation group. [(sonar.java.source not set. Assuming 8 or greater.)]
|
|
|
|
|
|
endif::env-github,rspecator-view[]
|