IG: hide strict throw from finally mode behind option (IDEA-154184)
[idea/community.git] / plugins / InspectionGadgets / InspectionGadgetsAnalysis / src / com / siyeh / InspectionGadgetsBundle.properties
1 cast.to.concrete.class.display.name=Cast to a concrete class
2 cast.to.concrete.class.problem.descriptor=Cast to concrete class <code>{0}</code> #loc
3 class.references.subclass.display.name=Class references one of its subclasses
4 class.references.subclass.problem.descriptor=Class ''{0}'' references subclass <code>#ref</code> #loc
5 class.references.subclass.problem.descriptor.anonymous=Anonymous class references subclass <code>#ref</code> #loc
6 collection.declared.by.class.display.name=Collection declared by class, not interface
7 collection.declared.by.class.problem.descriptor=Declaration of <code>#ref</code> should probably be weakened to ''{0}'' #loc
8 collection.declared.by.class.ignore.locals.option=Ignore local variables
9 collection.declared.by.class.ignore.private.members.option=Ignore private fields and methods
10 feature.envy.display.name=Feature envy
11 feature.envy.problem.descriptor=Class ''{0}'' accessed repeatedly in method <code>#ref()</code> #loc
12 instance.variable.of.concrete.class.display.name=Type of instance field is concrete class
13 instance.variable.of.concrete.class.problem.descriptor=Type of field ''{0}'' is concrete class <code>#ref</code> #loc
14 chain.of.instanceof.checks.display.name=Chain of 'instanceof' checks
15 chain.of.instanceof.checks.problem.descriptor=Chain of 'instanceof' checks indicates abstraction failure #loc
16 chain.of.class.equality.checks.problem.descriptor=Chain of class equality checks indicates abstraction failure #loc
17 instanceof.concrete.class.display.name='instanceof' a concrete class
18 instanceof.concrete.class.problem.descriptor='instanceof' concrete class <code>#ref</code> #loc
19 instanceof.check.for.this.display.name='instanceof' check for 'this'
20 instanceof.check.for.this.problem.descriptor='instanceof' check for <code>#ref</code> #loc
21 local.variable.of.concrete.class.display.name=Local variable of concrete class
22 local.variable.of.concrete.class.problem.descriptor=Local variable ''{0}'' of concrete class <code>#ref</code> #loc
23 magic.number.display.name=Magic number
24 magic.number.problem.descriptor=Magic number <code>#ref</code> #loc
25 magic.number.ignore.option=Ignore constants in 'hashCode()' methods
26 method.return.concrete.class.display.name=Method return of concrete class
27 method.return.concrete.class.problem.descriptor=Method returns a concrete class <code>#ref</code> #loc
28 overly.strong.type.cast.display.name=Overly strong type cast
29 overly.strong.type.cast.weaken.quickfix=Weaken overly strong cast
30 concrete.class.method.parameter.display.name=Method parameter of concrete class
31 concrete.class.method.parameter.problem.descriptor=Parameter ''{0}'' of concrete class <code>#ref</code> #loc
32 public.method.not.in.interface.display.name='public' method not exposed in interface
33 public.method.not.in.interface.problem.descriptor='public' method <code>#ref()</code> is not exposed via an interface #loc
34 public.method.not.in.interface.option=<html>Ignore if the containing class does not implement a non-library interface</html>
35 static.variable.of.concrete.class.display.name=Static field of concrete class
36 static.variable.of.concrete.class.problem.descriptor=Static field ''{0}'' of concrete class <code>#ref</code> #loc
37 incompatible.mask.operation.display.name=Incompatible bitwise mask operation
38 incompatible.mask.operation.problem.descriptor.always.false=<code>#ref</code> is always false #loc
39 incompatible.mask.operation.problem.descriptor.always.true=<code>#ref</code> is always true #loc
40 pointless.bitwise.expression.display.name=Pointless bitwise expression
41 pointless.bitwise.expression.simplify.quickfix=Simplify
42 shift.operation.by.inappropriate.constant.display.name=Shift operation by inappropriate constant
43 shift.operation.by.inappropriate.constant.problem.descriptor.too.large=Shift operation <code>#ref</code> by overly large constant value #loc
44 shift.operation.by.inappropriate.constant.problem.descriptor.negative=Shift operation <code>#ref</code> by negative constant value #loc
45 equals.called.on.array.display.name='equals()' called on array
46 equals.called.on.array.problem.descriptor=<code>#ref()</code> between arrays should probably be 'Arrays.equals()' #loc
47 replace.with.arrays.equals=Replace with 'Arrays.equals()'
48 replace.with.arrays.deep.equals=Replace with 'Arrays.deepEquals()'
49 assignment.to.null.display.name=Assignment to 'null'
50 assignment.to.null.problem.descriptor=Assignment of variable <code>#ref</code> to 'null' #loc
51 assignment.to.null.option=Ignore assignments to fields
52 assignment.to.static.field.from.instance.method.display.name=Assignment to static field from instance context
53 assignment.to.static.field.from.instance.method.problem.descriptor=Assignment to static field <code>#ref</code> from instance context #loc
54 assignment.used.as.condition.display.name=Assignment used as condition
55 assignment.used.as.condition.problem.descriptor=<code>#ref</code> used as condition #loc
56 assignment.used.as.condition.replace.quickfix=Replace '=' with '=='
57 cast.conflicts.with.instanceof.display.name=Cast conflicts with 'instanceof'
58 cast.conflicts.with.instanceof.problem.descriptor=Cast <code>#ref</code> conflicts with surrounding 'instanceof' check #loc
59 casting.to.incompatible.interface.display.name=Casting to incompatible interface
60 casting.to.incompatible.interface.problem.descriptor=Cast to incompatible interface <code>#ref</code> #loc
61 collection.added.to.self.display.name=Collection added to self
62 collection.added.to.self.problem.descriptor=''{0}()'' called on collection <code>#ref</code> with itself as argument #loc
63 non.final.field.compareto.display.name=Non-final field referenced in 'compareTo()'
64 non.final.field.compareto.problem.descriptor=Non-final field <code>#ref</code> accessed in 'compareTo()' #loc
65 covariant.compareto.display.name=Covariant 'compareTo()'
66 covariant.compareto.problem.descriptor=<code>#ref()</code> should take 'Object' as its argument #loc
67 covariant.equals.display.name=Covariant 'equals()'
68 covariant.equals.problem.descriptor=<code>#ref()</code> should take 'Object' as its argument #loc
69 empty.class.initializer.display.name=Empty class initializer
70 empty.class.initializer.problem.descriptor=Empty class initializer #loc
71 empty.class.initializer.delete.quickfix=Delete empty class initializer
72 statement.with.empty.body.display.name=Statement with empty body
73 statement.with.empty.body.problem.descriptor=<code>#ref</code> statement has empty body #loc
74 statement.with.empty.body.include.option=Include statement bodies that are empty code blocks
75 equals.between.inconvertible.types.display.name='equals()' between objects of inconvertible types
76 equals.between.inconvertible.types.problem.descriptor=<code>#ref()</code> between objects of inconvertible types ''{0}'' and ''{1}'' #loc
77 non.final.field.in.equals.display.name=Non-final field referenced in 'equals()'
78 non.final.field.in.equals.problem.descriptor=Non-final field <code>#ref</code> accessed in 'equals()'  #loc
79 equals.doesnt.check.class.parameter.display.name='equals()' method which does not check class of parameter
80 equals.doesnt.check.class.parameter.problem.descriptor=<code>#ref()</code> should check the class of its parameter #loc
81 for.loop.not.use.loop.variable.display.name='for' loop where update or condition does not use loop variable
82 for.loop.not.use.loop.variable.problem.descriptor.condition=<code>#ref</code> statement has condition which does not use the for loop variable #loc
83 for.loop.not.use.loop.variable.problem.descriptor.update=<code>#ref</code> statement has update which does not use the for loop variable #loc
84 for.loop.not.use.loop.variable.problem.descriptor.both.condition.and.update=<code>#ref</code> statement has condition and update which do not use the for loop variable #loc
85 non.final.field.in.hashcode.display.name=Non-final field referenced in 'hashCode()'
86 non.final.field.in.hashcode.problem.descriptor=Non-final field <code>#ref</code> accessed in 'hashCode()' #loc
87 result.of.method.call.ignored.display.name=Result of method call ignored
88 result.of.method.call.ignored.problem.descriptor=Result of <code>{0}.#ref()</code> is ignored #loc
89 result.of.method.call.ignored.class.column.title=Class name
90 result.of.method.call.ignored.method.column.title=Method name regex
91 result.of.method.call.ignored.non.library.option=Report all ignored non-library calls
92 infinite.recursion.display.name=Infinite recursion
93 infinite.recursion.problem.descriptor=Method <code>#ref()</code> recurses infinitely, and can only end by throwing an exception #loc
94 instanceof.with.incompatible.interface.display.name='instanceof' with incompatible interface
95 instanceof.with.incompatible.interface.problem.descriptor='instanceof' incompatible interface <code>#ref</code> #loc
96 instantiation.utility.class.display.name=Instantiation of utility class
97 instantiation.utility.class.problem.descriptor=Instantiation of utility class <code>#ref</code> #loc
98 iterator.hasnext.which.calls.next.display.name='Iterator.hasNext()' which calls 'next()'
99 iterator.hasnext.which.calls.next.problem.descriptor=<code>Iterator.#ref()</code> contains call to 'next()' #loc
100 iterator.next.does.not.throw.nosuchelementexception.display.name='Iterator.next()' which can't throw 'NoSuchElementException'
101 malformed.format.string.display.name=Malformed format string
102 malformed.format.string.problem.descriptor.malformed=Format string <code>#ref</code> is malformed #loc
103 malformed.format.string.problem.descriptor.illegal=Illegal format string specifier: {0} #loc
104 malformed.format.string.problem.descriptor.too.many.arguments=Too many arguments for format string (found: {0}, expected: {1}) #loc
105 malformed.format.string.problem.descriptor.too.few.arguments=Too few arguments for format string (found: {0}, expected: {1}) #loc
106 malformed.format.string.problem.descriptor.arguments.do.not.match.type=Argument type ''{0}'' does not match the type of the format specifier ''{1}'' #loc
107 malformed.regular.expression.display.name=Malformed regular expression
108 malformed.regular.expression.problem.descriptor1=Regular expression <code>#ref</code> is malformed #loc
109 malformed.regular.expression.problem.descriptor2=Regular expression <code>#ref</code> is malformed: {0} #loc
110 malformed.xpath.expression.display.name=Malformed XPath expression
111 malformed.xpath.expression.problem.description=XPath expression <code>#ref</code> is malformed #loc
112 mismatched.read.write.array.display.name=Mismatched read and write of array
113 mismatched.read.write.array.problem.descriptor.write.not.read=Contents of array <code>#ref</code> are written to, but never read #loc
114 mismatched.read.write.array.problem.descriptor.read.not.write=Contents of array <code>#ref</code> are read, but never written to #loc
115 mismatched.update.collection.display.name=Mismatched query and update of collection
116 mismatched.update.collection.problem.descriptor.updated.not.queried=Contents of collection <code>#ref</code> are updated, but never queried #loc
117 mismatched.update.collection.problem.description.queried.not.updated=Contents of collection <code>#ref</code> are queried, but never updated #loc
118 misspelled.compareto.display.name='compareto()' instead of 'compareTo()'
119 misspelled.compareto.problem.descriptor=<code>#ref()</code> method should probably be 'compareTo()' #loc
120 rename.quickfix=Rename
121 renameto.quickfix=Rename to ''{0}''
122 misspelled.equals.display.name='equal()' instead of 'equals()'
123 misspelled.equals.problem.descriptor=<code>#ref()</code> method should probably be 'equals()' #loc
124 misspelled.hashcode.display.name='hashcode()' instead of 'hashCode()'
125 misspelled.hashcode.problem.descriptor=<code>#ref()</code> should probably be 'hashCode()' #loc
126 misspelled.tostring.display.name='tostring()' instead of 'toString()'
127 misspelled.tostring.problem.descriptor=<code>#ref()</code> method should probably be 'toString()' #loc
128 non.short.circuit.boolean.expression.display.name=Non-short-circuit boolean expression
129 non.short.circuit.boolean.expression.problem.descriptor=Non-short-circuit boolean expression <code>#ref</code> #loc
130 non.short.circuit.boolean.expression.replace.quickfix=Replace with short circuit expression
131 null.argument.to.var.arg.method.display.name=Confusing argument to varargs method
132 null.argument.to.var.arg.method.problem.descriptor=Confusing argument <code>#ref</code>, unclear if a varargs or non-varargs call is desired #loc
133 primitive.array.argument.to.var.arg.method.display.name=Confusing primitive array argument to varargs method
134 primitive.array.argument.to.var.arg.method.problem.descriptor=Confusing primitive array argument to varargs method #loc
135 object.comparison.display.name=Object comparison using '==', instead of 'equals()'
136 object.comparison.enumerated.ignore.option=Ignore '==' between enumerated types
137 object.comparison.klass.ignore.option=Ignore '==' on 'java.lang.Class' objects
138 object.comparison.problem.description=Object values are compared using <code>#ref</code>, not 'equals()' #loc
139 object.comparison.replace.quickfix=Replace with 'equals()'
140 object.equals.null.problem.descriptor=<code>.equals(#ref)</code> is probably not what was intended #loc
141 default.tostring.call.display.name=Call to default 'toString()'
142 default.tostring.call.problem.descriptor=Call to default 'toString()' on <code>#ref</code> #loc
143 octal.and.decimal.integers.in.same.array.display.name=Octal and decimal integers in same array
144 octal.and.decimal.integers.in.same.array.problem.descriptor=Octal and decimal integers in the same array initializer #loc
145 result.of.object.allocation.ignored.display.name=Result of object allocation ignored
146 result.of.object.allocation.ignored.problem.descriptor=Result of <code>new #ref()</code> is ignored #loc
147 use.0index.in.jdbc.resultset.display.name=Use of index 0 in JDBC ResultSet
148 use.0index.in.jdbc.resultset.problem.descriptor=Use of index '0' in JDBC ResultSet #loc
149 use.0index.in.jdbc.prepared.statement.problem.descriptor=Use of index '0' in JDBC PreparedStatement #loc
150 return.of.null.display.name=Return of 'null'
151 return.of.null.problem.descriptor=Return of <code>#ref</code> #loc
152 return.of.null.arrays.option=Report methods that return arrays
153 return.of.null.quickfix=Annotate method as @Nullable
154 return.of.null.objects.option=Report methods that return objects
155 return.of.null.collections.option=Report methods that return collection objects
156 return.of.null.ignore.private.option=Ignore private methods
157 return.of.null.optional.quickfix=Replace with ''{0}.{1}()''
158 return.of.null.optional.quickfix.family=Replace with 'Optional.empty()'
159 static.method.via.subclass.display.name=Static method referenced via subclass
160 static.method.via.subclass.problem.descriptor=Static method <code>#ref()</code> declared in class ''{0}'' but referenced via subclass ''{1}'' #loc
161 static.method.via.subclass.rationalize.quickfix=Rationalize static method call
162 static.field.via.subclass.display.name=Static field referenced via subclass
163 static.field.via.subclass.problem.descriptor=Static field <code>#ref</code> declared in class ''{0}'' but referenced via subclass ''{1}'' #loc
164 static.field.via.subclass.rationalize.quickfix=Rationalize static field access
165 string.comparison.display.name=String comparison using '==', instead of 'equals()'
166 number.comparison.display.name=Number comparison using '==', instead of 'equals()'
167 string.comparison.problem.descriptor=String values are compared using <code>#ref</code>, not 'equals()' #loc
168 number.comparison.problem.descriptor=Number objects are compared using <code>#ref</code>, not 'equals()' #loc
169 subtraction.in.compareto.display.name=Subtraction in 'compareTo()'
170 subtraction.in.compareto.problem.descriptor=Subtraction <code>#ref</code> in 'compareTo()' may result in overflow errors #loc
171 text.label.in.switch.statement.display.name=Text label in 'switch' statement
172 text.label.in.switch.statement.problem.descriptor=Text label <code>#ref:</code> in 'switch' statement #loc
173 properties.object.as.hashtable.display.name=Use of Properties object as a Hashtable
174 properties.object.as.hashtable.problem.descriptor=Call to <code>Hashtable.#ref()</code> on properties object #loc
175 assignment.replaceable.with.operator.assignment.display.name=Assignment replaceable with operator assignment
176 unnecessary.code.block.display.name=Unnecessary code block
177 unnecessary.code.block.unwrap.quickfix=Unwrap block
178 redundant.local.variable.display.name=Redundant local variable
179 redundant.local.variable.ignore.option=Ignore immediately returned or thrown variables
180 redundant.local.variable.annotation.option=Ignore variables which have an annotation
181 static.collection.display.name=Static collection
182 static.collection.problem.descriptor=Static collection <code>#ref</code> #loc
183 static.collection.ignore.option=Ignore weak static collections or maps
184 stringbuffer.field.display.name=StringBuffer field
185 stringbuffer.field.problem.descriptor=''{0}'' field <code>#ref</code> #loc
186 gc.call.display.name=Calls to 'System.gc()' or 'Runtime.gc()'
187 gc.call.problem.descriptor=<code>#ref</code> should not be called in production code #loc
188 array.allocation.zero.length.display.name=Zero-length array allocation
189 array.allocation.zero.length.problem.descriptor=Allocation of zero length array #loc
190 multiple.loggers.display.name=Class with multiple loggers
191 logger.name.option=Logger &class name:
192 multiple.loggers.problem.descriptor=Class <code>#ref</code> declares multiple loggers #loc
193 no.logger.display.name=Class without logger
194 no.logger.problem.descriptor=Class <code>#ref</code> does not declare a logger #loc
195 non.constant.logger.display.name=Non-constant logger
196 non.constant.logger.problem.descriptor=Non-constant logger field <code>#ref</code> #loc
197 public.method.without.logging.display.name='public' method without logging
198 public.method.without.logging.problem.descriptor='public' method <code>#ref()</code> has no logging call #loc
199 finalize.doesnt.call.super.display.name='finalize()' does not call 'super.finalize()'
200 finalize.doesnt.call.super.ignore.option=Ignore for direct subclasses of 'java.lang.Object'
201 ignore.trivial.finalizers.option=Ignore for trivial 'finalize()' implementations
202 finalize.doesnt.call.super.problem.descriptor=<code>#ref()</code> #loc does not call 'super.finalize()'
203 finalize.declaration.display.name='finalize()' declaration
204 finalize.declaration.problem.descriptor=<code>#ref()</code> declared #loc
205 finalize.not.declared.protected.display.name='finalize()' not declared 'protected'
206 finalize.not.declared.protected.problem.descriptor=<code>#ref()</code> not declared 'protected' #loc
207 make.protected.quickfix=Make 'protected'
208 finalize.called.explicitly.display.name='finalize()' called explicitly
209 finalize.called.explicitly.problem.descriptor=<code>#ref()</code> called explicitly #loc
210 java.lang.import.display.name='java.lang' import
211 java.lang.import.problem.descriptor=Unnecessary import from package 'java.lang' #loc
212 import.display.name='*' import
213 import.problem.descriptor=Package import <code>#ref</code> #loc
214 redundant.import.display.name=Redundant import
215 redundant.import.problem.descriptor=Redundant import <code>#ref</code> #loc
216 import.from.same.package.display.name=Import from same package
217 import.from.same.package.problem.descriptor=Unnecessary import from same package <code>#ref</code> #loc
218 single.class.import.display.name=Single class import
219 single.class.import.problem.descriptor=Single class import <code>#ref</code> #loc
220 static.import.display.name=Static import
221 static.import.problem.descriptor=Static import <code>#ref</code>  #loc
222 static.import.replace.quickfix=Replace with non-static import
223 unused.import.display.name=Unused import
224 unused.import.problem.descriptor=Unused import <code>#ref</code> #loc
225 clone.instantiates.objects.with.constructor.display.name='clone()' instantiates objects with constructor
226 clone.instantiates.objects.with.constructor.problem.descriptor='clone()' creates new <code>#ref</code> instances #loc
227 clone.doesnt.call.super.clone.display.name='clone()' does not call 'super.clone()'
228 clone.doesnt.call.super.clone.problem.descriptor=<code>#ref()</code> does not call 'super.clone()' #loc
229 clone.doesnt.declare.clonenotsupportedexception.display.name='clone()' does not declare 'CloneNotSupportedException'
230 clone.doesnt.declare.clonenotsupportedexception.problem.descriptor=<code>#ref()</code> #loc does not declare 'CloneNotSupportedException'
231 clone.doesnt.declare.clonenotsupportedexception.declare.quickfix=Declare 'CloneNotSupportedException'
232 clone.method.in.non.cloneable.class.display.name='clone()' method in non-Cloneable class
233 clone.method.in.non.cloneable.class.problem.descriptor=<code>#ref()</code> defined in non-Cloneable class ''{0}'' #loc
234 clone.method.in.non.cloneable.interface.problem.descriptor=<code>#ref()</code> defined in non-Cloneable interface ''{0}'' #loc
235 cloneable.class.without.clone.display.name=Cloneable class without 'clone()'
236 cloneable.class.without.clone.problem.descriptor=<code>#ref</code> does not define 'clone()' #loc
237 cloneable.class.without.clone.ignore.option=Ignore classes cloneable due to inheritance
238 cloneable.class.without.clone.quickfix=Generate 'clone()' method
239 class.without.tostring.display.name=Class without 'toString()'
240 class.without.tostring.problem.descriptor=Class <code>#ref</code> should probably implement 'toString()', for debugging purposes #loc
241 use.obsolete.collection.type.display.name=Use of obsolete collection type
242 use.obsolete.collection.type.problem.descriptor=Obsolete collection type <code>#ref</code> used #loc
243 use.obsolete.collection.type.ignore.library.arguments.option=Ignore obsolete collection types where they are required
244 inspection.suppression.annotation.display.name=Inspection suppression annotation
245 inspection.suppression.annotation.problem.descriptor=Inspection suppression annotation <code>#ref</code> #loc
246 use.system.out.err.display.name=Use of System.out or System.err
247 use.system.out.err.problem.descriptor=Uses of <code>#ref</code> should probably be replaced with more robust logging #loc
248 dumpstack.call.display.name=Call to 'Thread.dumpStack()'
249 dumpstack.call.problem.descriptor=Call to <code>Thread.#ref()</code> should probably be replaced with more robust logging #loc
250 printstacktrace.call.display.name=Call to 'printStackTrace()'
251 printstacktrace.call.problem.descriptor=Call to <code>#ref()</code> should probably be replaced with more robust logging #loc
252 abstract.method.call.in.constructor.display.name=Abstract method called during object construction
253 abstract.method.call.in.constructor.problem.descriptor=Call to 'abstract' method <code>#ref()</code> during object construction #loc
254 instance.variable.may.not.be.initialized.display.name=Instance field may not be initialized
255 instance.variable.may.not.be.initialized.problem.descriptor=Instance field <code>#ref</code> may not be initialized during object construction #loc
256 instance.Variable.may.not.be.initialized.problem.descriptor.junit=Instance field <code>#ref</code> may not be initialized during object construction or 'setUp()' call #loc
257 primitive.fields.ignore.option=Ignore primitive fields
258 instance.variable.used.before.initialized.display.name=Instance field used before initialization
259 instance.variable.used.before.initialized.problem.descriptor=Instance field <code>#ref</code> used before initialized #loc
260 non.final.static.variable.initialization.display.name=Non-final static field is used during class initialization
261 non.final.static.variable.initialization.problem.descriptor=Non-final static field <code>#ref</code> used during class initialization #loc
262 overridable.method.call.in.constructor.display.name=Overridable method called during object construction
263 overridable.method.call.in.constructor.problem.descriptor=Call to overridable method <code>#ref()</code> during object construction #loc
264 overridden.method.call.in.constructor.display.name=Overridden method called during object construction
265 overridden.method.call.in.constructor.problem.descriptor=Call to overridden method <code>#ref()</code> during object construction #loc
266 static.variable.may.not.be.initialized.display.name=Static field may not be initialized
267 static.variable.may.not.be.initialized.problem.descriptor=Static field <code>#ref</code> may not be initialized during class initialization #loc
268 static.variable.used.before.initialization.display.name=Static field used before initialization
269 static.variable.used.before.initialization.problem.descriptor=Static field <code>#ref</code> used before initialization #loc
270 this.reference.escaped.in.construction.display.name='this' reference escaped in object construction
271 this.reference.escaped.in.construction.problem.descriptor=Escape of <code>#ref</code> during object construction #loc
272 assignment.to.catch.block.parameter.display.name=Assignment to catch block parameter
273 extract.parameter.as.local.variable.quickfix=Extract parameter as local variable
274 assignment.to.for.loop.parameter.display.name=Assignment to 'for' loop parameter
275 assignment.to.for.loop.parameter.check.foreach.option=Check foreach parameters
276 assignment.to.for.loop.parameter.problem.descriptor=Assignment to for-loop parameter <code>#ref</code> #loc
277 assignment.to.method.parameter.display.name=Assignment to method parameter
278 chained.equality.comparisons.display.name=Chained equality comparisons
279 confusing.octal.escape.sequence.display.name=Confusing octal escape sequence
280 increment.decrement.display.name=Value of ++ or -- used
281 nested.assignment.display.name=Result of assignment used
282 nested.assignment.problem.descriptor=Result of assignment expression used #loc
283 overloaded.methods.with.same.number.parameters.display.name=Overloaded methods with same number of parameters
284 overloaded.vararg.method.display.name=Overloaded variable argument method
285 refused.bequest.display.name=Refused bequest
286 reuse.of.local.variable.display.name=Reuse of local variable
287 reuse.of.local.variable.split.quickfix=Split local variable
288 character.comparison.display.name=Character comparison
289 character.comparison.problem.descriptor=Character comparison <code>#ref</code> in an internationalized context #loc
290 assignment.collection.array.field.from.parameter.display.name=Assignment to Collection or array field from parameter
291 assignment.collection.array.field.from.parameter.problem.descriptor.array=Assignment to array field <code>#ref</code> from parameter ''{0}'' #loc
292 assignment.collection.array.field.from.parameter.problem.descriptor.collection=Assignment to Collection field <code>#ref</code> from parameter ''{0}'' #loc
293 assignment.collection.array.field.option=Ignore assignments in private methods
294 assignment.to.date.calendar.field.from.parameter.display.name=Assignment to Date or Calendar field from parameter
295 assignment.to.date.calendar.field.from.parameter.problem.descriptor=Assignment to ''{0}'' field <code>#ref</code> from parameter {1} #loc
296 package.visible.field.display.name=Package-visible field
297 package.visible.field.problem.descriptor=Package-visible field <code>#ref</code> #loc
298 package.visible.inner.class.display.name=Package-visible inner class
299 package.visible.inner.class.problem.descriptor=Package-visible inner class <code>#ref</code> #loc
300 package.visible.inner.class.ignore.enum.option=Ignore package-visible inner enums
301 package.visible.inner.class.ignore.interface.option=Ignore package-visible inner interfaces
302 protected.field.display.name=Protected field
303 protected.field.problem.descriptor=Protected field <code>#ref</code> #loc
304 protected.inner.class.display.name=Protected inner class
305 protected.inner.class.problem.descriptor=Protected inner class <code>#ref</code> #loc
306 protected.inner.class.ignore.enum.option=Ignore 'protected' inner enums
307 protected.inner.class.ignore.interface.option=Ignore 'protected' inner interfaces
308 public.field.display.name='public' field
309 public.field.problem.descriptor='public' field <code>#ref</code> #loc
310 public.field.ignore.enum.type.fields.option=Ignore 'public final' fields of an enum type
311 public.inner.class.display.name='public' inner class
312 public.inner.class.problem.descriptor='public' inner class <code>#ref</code> #loc
313 public.inner.class.ignore.enum.option=Ignore 'public' inner enums
314 public.inner.class.ignore.interface.option=Ignore 'public' inner interfaces
315 return.of.collection.array.field.display.name=Return of Collection or array field
316 return.of.collection.array.field.problem.descriptor.array='return' of array field <code>#ref</code> #loc
317 return.of.collection.array.field.problem.descriptor.collection='return' of Collection field <code>#ref</code> #loc
318 return.of.collection.array.field.option=Ignore private methods returning an array or collection field
319 return.date.calendar.field.display.name=Return of Date or Calendar field
320 return.date.calendar.field.problem.descriptor=Return of ''{0}'' field <code>#ref</code> #loc
321 return.date.calendar.field.quickfix=Return clone of ''{0}''
322 accessing.non.public.field.of.another.object.display.name=Accessing a non-public field of another object
323 accessing.non.public.field.of.another.object.problem.descriptor=Direct access of non-public field <code>#ref</code> on another object #loc
324 call.to.date.tostring.display.name=Call to 'Date.toString()'
325 call.to.date.tostring.problem.descriptor=<code>Date.#ref()</code> used in an internationalized context #loc
326 magic.character.display.name=Magic character
327 magic.character.problem.descriptor=Magic character <code>#ref</code> in an internationalized context #loc
328 call.to.numeric.tostring.display.name=Call to Numeric 'toString()'
329 call.to.numeric.tostring.problem.descriptor=Numeric <code>#ref()</code> called in an internationalized context #loc
330 instantiating.simpledateformat.without.locale.display.name=Instantiating a SimpleDateFormat without a Locale
331 instantiating.simpledateformat.without.locale.problem.descriptor=Instantiating a <code>#ref</code> without specifying a Locale in an internationalized context #loc
332 string.compareto.call.display.name=Call to 'String.compareTo()'
333 string.compareto.call.problem.descriptor=<code>String.#ref()</code> called using internationalized strings #loc
334 string.concatenation.display.name=String concatenation
335 string.concatenation.problem.descriptor=String concatenation <code>#ref</code> in an internationalized context #loc
336 string.concatenation.ignore.system.out.option=Ignore for 'System.out.print' arguments
337 string.concatenation.ignore.system.err.option=Ignore for 'System.err.print' arguments
338 string.concatenation.ignore.assert.option=Ignore for assert statement arguments
339 string.concatenation.ignore.exceptions.option=Ignore for throwable arguments
340 string.concatenation.ignore.constant.initializers.option=Ignore for initializers of constants
341 ignore.in.annotations=Ignore in annotations
342 ignore.in.tostring=Ignore inside toString() methods
343 ignore.as.initial.capacity=Ignore initial capacity for StringBuilders and Collections
344 string.equalsignorecase.call.display.name=Call to 'String.equalsIgnoreCase()'
345 string.equalsignorecase.call.problem.descriptor=<code>String.#ref()</code> using internationalized strings #loc
346 string.equals.call.display.name=Call to 'String.equals()'
347 string.equals.call.problem.descriptor=<code>String.#ref()</code> using internationalized strings #loc
348 string.touppercase.tolowercase.without.locale.display.name=Call to 'String.toUpperCase()' or 'toLowerCase()' without a Locale
349 string.touppercase.tolowercase.without.locale.problem.descriptor=<code>String.#ref()</code> called without specifying a Locale using internationalized strings #loc
350 use.stringtokenizer.display.name=Use of StringTokenizer
351 use.stringtokenizer.problem.descriptor=<code>#ref</code> in an internationalized context #loc
352 time.tostring.call.display.name=Call to 'Time.toString()'
353 time.tostring.call.problem.descriptor=<code>Time.#ref()</code> in an internationalized context #loc
354 class.escapes.defined.scope.display.name=Class escapes defined scope
355 class.escapes.defined.scope.problem.descriptor=Class <code>#ref</code> is made visible outside its defined scope #loc
356 field.name.hides.in.superclass.display.name=Field name hides field in superclass
357 field.name.hides.in.superclass.problem.descriptor=Field <code>#ref</code> hides field in superclass #loc
358 field.name.hides.in.superclass.ignore.option=Ignore superclass fields not visible from subclass
359 inner.class.field.hides.outer.display.name=Inner class field hides outer class field
360 inner.class.field.hides.outer.ignore.option=Ignore outer fields not visible from inner class
361 inner.class.field.hides.outer.problem.descriptor=Inner class field <code>#ref</code> hides outer class field #loc
362 local.variable.hides.member.variable.display.name=Local variable hides field
363 local.variable.hides.member.variable.problem.descriptor=Local variable <code>#ref</code> hides field in class ''{0}'' #loc
364 local.variable.hides.member.variable.ignore.option=Ignore local variables in static methods
365 method.overloads.display.name=Method overloads method of superclass
366 method.overloads.problem.descriptor=Method <code>#ref()</code> overloads a compatible method of a superclass, when overriding might have been intended #loc
367 method.overloads.report.incompatible.option=Report even if parameter types are not compatible
368 method.overrides.private.display.name=Method overrides private method of superclass
369 method.overrides.private.display.name.problem.descriptor=Method <code>#ref()</code> overrides a private method of a superclass #loc
370 method.overrides.static.display.name=Method overrides static method of superclass
371 method.overrides.static.problem.descriptor=Method <code>#ref()</code> overrides a static method of a superclass #loc
372 parameter.hides.member.variable.display.name=Parameter hides field
373 parameter.hides.member.variable.problem.descriptor=Parameter <code>#ref</code> hides field in class ''{0}'' #loc
374 parameter.hides.member.variable.ignore.setters.option=Ignore for property setters
375 parameter.hides.member.variable.ignore.superclass.option=Ignore superclass fields not visible from subclass
376 parameter.hides.member.variable.ignore.constructors.option=Ignore for constructors
377 parameter.hides.member.variable.ignore.abstract.methods.option=Ignore for abstract methods
378 parameter.hides.member.variable.ignore.static.parameters.option=Ignore for static method parameters hiding instance fields
379 type.parameter.hides.visible.type.display.name=Type parameter hides visible type
380 type.parameter.hides.visible.type.problem.descriptor=Type parameter <code>#ref</code> hides visible type ''{0}'' #loc
381 type.parameter.hides.type.parameter.problem.descriptor=Type parameter <code>#ref</code> hides type parameter ''{0}'' #loc
382 anonymous.class.variable.hides.containing.method.variable.display.name=Anonymous class variable hides variable in containing method
383 anonymous.class.parameter.hides.containing.method.variable.problem.descriptor=Anonymous class parameter <code>#ref</code> hides variable in containing method #loc
384 anonymous.class.field.hides.containing.method.variable.problem.descriptor=Anonymous class field <code>#ref</code> hides variable in containing method #loc
385 anonymous.class.variable.hides.containing.method.variable.problem.descriptor=Anonymous class local variable <code>#ref</code> hides variable in containing method #loc
386 channel.opened.not.closed.display.name=Channel opened but not safely closed
387 drivermanager.call.display.name=Use of DriverManager to get JDBC connection
388 drivermanager.call.problem.descriptor=Call to <code>DriverManager.#ref()</code> #loc
389 hibernate.resource.opened.not.closed.display.name=Hibernate resource opened but not safely closed
390 i.o.resource.opened.not.closed.display.name=I/O resource opened but not safely closed
391 resource.opened.not.closed.problem.descriptor=''{0}'' should be opened in front of a ''try'' block and closed in the corresponding ''finally'' block #loc
392 jdbc.resource.opened.not.closed.display.name=JDBC resource opened but not safely closed
393 jndi.resource.opened.not.closed.display.name=JNDI resource opened but not safely closed
394 socket.opened.not.closed.display.name=Socket opened but not safely closed
395 annotation.class.display.name=Annotation class
396 annotation.class.problem.descriptor=Annotation class <code>#ref</code> #loc
397 annotation.display.name=Annotation
398 annotation.problem.descriptor=Annotation <code>#ref</code> #loc
399 use.assert.as.identifier.display.name=Use of 'assert' as identifier
400 use.assert.as.identifier.problem.descriptor=Use of <code>#ref</code> as identifier #loc
401 assert.statement.display.name='assert' statement
402 statement.problem.descriptor=<code>#ref</code> statement #loc
403 auto.boxing.display.name=Auto-boxing
404 auto.boxing.problem.descriptor=Auto-boxing <code>#ref</code> #loc
405 auto.boxing.make.boxing.explicit.quickfix=Make boxing explicit
406 auto.boxing.ignore.added.to.collection.option=Ignore expressions added to a collection
407 auto.unboxing.display.name=Auto-unboxing
408 auto.unboxing.problem.descriptor=Auto-unboxing <code>#ref</code> #loc
409 auto.unboxing.make.unboxing.explicit.quickfix=Make unboxing explicit
410 use.enum.as.identifier.display.name=Use of 'enum' as identifier
411 use.enum.as.identifier.problem.descriptor=Use of <code>#ref</code> as identifier #loc
412 enumerated.class.display.name=Enumerated class
413 enumerated.class.problem.descriptor=Enumerated class <code>#ref</code> #loc
414 extended.for.statement.display.name=Extended 'for' statement
415 extended.for.statement.replace.quickfix=Replace with old-style 'for' statement
416 variable.argument.method.display.name=Variable argument method
417 variable.argument.method.problem.descriptor=Variable argument method <code>#ref()</code> #loc
418 variable.argument.method.quickfix=Convert variable argument parameter to array
419 hardcoded.file.separator.display.name=Hardcoded file separator
420 hardcoded.file.separator.problem.descriptor=Hardcoded file separator <code>#ref</code> #loc
421 hardcoded.file.separator.include.option=Include "example/*" in recognized MIME media types
422 hardcoded.line.separator.display.name=Hardcoded line separator
423 hardcoded.line.separator.problem.descriptor=Hardcoded line separator <code>#ref</code> #loc
424 native.method.display.name=Native method
425 native.method.problem.descriptor=Methods declared <code>#ref</code> are non-portable #loc
426 runtime.exec.call.display.name=Call to 'Runtime.exec()'
427 runtime.exec.call.problem.descriptor=Call to <code>Runtime.#ref()</code> is non-portable #loc
428 system.exit.call.display.name=Call to 'System.exit()' or related methods
429 system.exit.call.problem.descriptor=Call to <code>{0}.#ref()</code> is non-portable #loc
430 system.exit.call.ignore.option=Ignore in main method
431 system.getenv.call.display.name=Call to 'System.getenv()'
432 system.getenv.call.problem.descriptor=Call to <code>System.#ref()</code> is non-portable #loc
433 use.of.awt.peer.class.display.name=Use of AWT peer class
434 use.of.awt.peer.class.problem.descriptor=Use of AWT peer class <code>#ref</code> is non-portable #loc
435 use.of.concrete.jdbc.driver.class.display.name=Use of concrete JDBC driver class
436 use.of.concrete.jdbc.driver.class.problem.descriptor=Use of concrete JDBC driver class <code>#ref</code> is non-portable #loc
437 use.processbuilder.class.display.name=Use of 'java.lang.ProcessBuilder' class
438 use.processbuilder.class.problem.descriptor=Use of <code>#ref</code> is non-portable #loc
439 use.sun.classes.display.name=Use of sun.* classes
440 use.sun.classes.problem.descriptor=Use of Sun-supplied class <code>#ref</code> is non-portable #loc
441 abstract.class.with.only.one.direct.inheritor.display.name=Abstract class which has only one direct inheritor
442 anonymous.inner.may.be.named.static.inner.class.display.name=Anonymous class may be a named 'static' inner class
443 anonymous.inner.may.be.named.static.inner.class.problem.descriptor=Anonymous class <code>#ref</code> may be a named 'static' inner class #loc
444 array.length.in.loop.condition.display.name=Array.length in loop condition
445 array.length.in.loop.condition.problem.descriptor=Check of array <code>#ref</code> in loop condition #loc
446 large.array.allocation.no.outofmemoryerror.display.name=Large array allocation with no OutOfMemoryError check
447 large.array.allocation.no.outofmemoryerror.problem.descriptor=Large array allocation which is not checked for out-of-memory condition #loc
448 large.array.allocation.no.outofmemoryerror.maximum.number.of.elements.option=Maximum number of elements:
449 connection.opened.not.safely.closed.display.name=Connection opened but not safely closed
450 field.repeatedly.accessed.in.method.display.name=Field repeatedly accessed in method
451 field.repeatedly.accessed.in.method.problem.descriptor=Field ''{0}'' accessed repeatedly in method <code>#ref()</code> #loc
452 field.repeatedly.accessed.in.method.ignore.option=Ignore 'final' fields
453 interface.one.inheritor.display.name=Interface which has only one direct inheritor
454 interface.one.inheritor.problem.descriptor=Interface <code>#ref</code> has only one direct inheritor #loc
455 method.call.in.loop.condition.display.name=Method call in loop condition
456 method.call.in.loop.condition.problem.descriptor=Call to method <code>#ref()</code> in loop condition #loc
457 large.initializer.primitive.type.array.display.name=Overly large initializer for array of primitive type
458 large.initializer.primitive.type.array.problem.descriptor=Primitive array initializer with too many elements ({0}) #loc
459 large.initializer.primitive.type.array.maximum.number.of.elements.option=Maximum number of elements:
460 private.member.access.between.outer.and.inner.classes.display.name=Private member access between outer and inner classes
461 private.member.access.between.outer.and.inner.classes.problem.descriptor=Access to private member of class ''{0}'' #loc
462 private.member.access.between.outer.and.inner.classes.make.local.quickfix=Make ''{0}'' package-private
463 private.member.access.between.outer.and.inner.classes.make.constructor.package.local.quickfix=Make ''{0}'' constructor package-private
464 recordstore.opened.not.safely.closed.display.name=RecordStore opened but not safely closed
465 overly.complex.anonymous.inner.class.display.name=Overly complex anonymous class
466 cyclomatic.complexity.limit.option=Cyclomatic complexity limit:
467 overly.complex.anonymous.inner.class.problem.descriptor=Overly complex anonymous class (cyclomatic complexity = {0}) #loc
468 anonymous.inner.class.with.too.many.methods.display.name=Anonymous inner class with too many methods
469 method.count.limit.option=Method count limit:
470 anonymous.inner.class.with.too.many.methods.problem.descriptor=Anonymous inner class with too many methods (method count = {0}) #loc
471 overly.complex.class.display.name=Overly complex class
472 overly.complex.class.problem.descriptor=Overly complex class <code>#ref</code> (cyclomatic complexity = {0}) #loc
473 overly.coupled.class.display.name=Overly coupled class
474 overly.coupled.class.class.coupling.limit.option=Class coupling limit:
475 include.java.system.classes.option=Include couplings to java system classes
476 include.library.classes.option=Include couplings to library classes
477 overly.coupled.class.problem.descriptor=<code>#ref</code> is overly coupled (dependencies = {0}) #loc
478 class.too.deep.display.name=Class too deep in inheritance tree
479 class.too.deep.inheritance.depth.limit.option=Inheritance depth limit:
480 class.too.deep.problem.descriptor=<code>#ref</code> is too deep in inheritance tree (inheritance depth = {0}) #loc
481 inner.class.too.deeply.nested.display.name=Inner class too deeply nested
482 inner.class.too.deeply.nested.nesting.limit.option=Nesting limit:
483 inner.class.too.deeply.nested.problem.descriptor=<code>#ref</code> is too deeply nested (nesting level = {0}) #loc
484 too.many.constructors.display.name=Class with too many constructors
485 too.many.constructors.count.limit.option=Constructor count limit:
486 too.many.constructors.ignore.deprecated.option=Ignore deprecated constructors
487 too.many.constructors.problem.descriptor=<code>#ref</code> has too many constructors (constructor count = {0}) #loc
488 too.many.fields.display.name=Class with too many fields
489 too.many.fields.count.limit.option=Field count limit:
490 too.many.fields.problem.descriptor=<code>#ref</code> has too many fields (field count = {0}) #loc
491 too.many.methods.display.name=Class with too many methods
492 too.many.methods.problem.descriptor=<code>#ref</code> has too many methods (method count = {0}) #loc
493 externalizable.with.serialization.methods.display.name=Externalizable class with 'readObject()' or 'writeObject()'
494 externalizable.with.serialization.methods.problem.descriptor.both=Externalizable class <code>#ref</code> defines 'readObject()' and 'writeObject()' #loc
495 externalizable.with.serialization.methods.problem.descriptor.write=Externalizable class <code>#ref</code> defines 'writeObject()' #loc
496 externalizable.with.serialization.methods.problem.descriptor.read=Externalizable class <code>#ref</code> defines 'readObject()' #loc
497 non.serializable.with.serialversionuid.display.name=Non-serializable class with 'serialVersionUID'
498 non.serializable.class.with.serialversionuid.problem.descriptor=Non-serializable class <code>#ref</code> defines a 'serialVersionUID' field #loc
499 non.serializable.interface.with.serialversionuid.problem.descriptor=Non-serializable interface <code>#ref</code> defines a 'serialVersionUID' field #loc
500 non.serializable.@interface.with.serialversionuid.problem.descriptor=Non-serializable @interface <code>#ref</code> defines a 'serialVersionUID' field #loc
501 non.serializable.anonymous.with.serialversionuid.problem.descriptor=Non-serializable anonymous class extending <code>#ref</code> defines a 'serialVersionUID' field #loc
502 non.serializable.with.serialversionuid.remove.quickfix=Remove 'serialVersionUID' field
503 non.serializable.class.with.readwriteobject.display.name=Non-serializable class with 'readObject()' or 'writeObject()'
504 non.serializable.class.with.readwriteobject.problem.descriptor.both=Non-serializable class <code>#ref</code> defines 'readObject()' and 'writeObject()' #loc
505 non.serializable.class.with.readwriteobject.problem.descriptor.write=Non-serializable class <code>#ref</code> defines 'writeObject()' #loc
506 non.serializable.class.with.readwriteobject.problem.descriptor.read=Non-serializable class <code>#ref</code> defines 'readObject()' #loc
507 non.serializable.anonymous.with.readwriteobject.problem.descriptor.both=Non-serializable anonymous class extending <code>#ref</code> defines 'readObject()' and 'writeObject()' #loc
508 non.serializable.anonymous.with.readwriteobject.problem.descriptor.write=Non-serializable anonymous class extending <code>#ref</code> defines 'writeObject()' #loc
509 non.serializable.anonymous.with.readwriteobject.problem.descriptor.read=Non-serializable anonymous class extending <code>#ref</code> defines 'readObject()' #loc
510 readwriteobject.private.display.name='readObject()' or 'writeObject()' not declared 'private'
511 readwriteobject.private.problem.descriptor=<code>#ref</code> not declared 'private' #loc
512 readobject.initialization.display.name=Instance field may not be initialized by 'readObject()'
513 readobject.initialization.problem.descriptor=Instance field <code>#ref</code> may not be initialized during 'readObject()' call #loc
514 readresolve.writereplace.protected.display.name='readResolve()' or 'writeReplace()' not declared 'protected'
515 readresolve.writereplace.protected.problem.descriptor=<code>#ref()</code> not declared 'protected' #loc
516 serialpersistentfields.with.wrong.signature.display.name='serialPersistentFields' field not declared 'private static final ObjectStreamField[]'
517 serialpersistentfields.with.wrong.signature.problem.descriptor=<code>#ref</code> field of a Serializable class is not declared 'private static final ObjectStreamField[]' #loc
518 serialversionuid.private.static.final.long.display.name='serialVersionUID' field not declared 'private static final long'
519 serialversionuid.private.static.final.long.problem.descriptor=<code>#ref</code> field of a Serializable class is not declared 'private static final long' #loc
520 serialversionuid.private.static.final.long.quickfix=Make serialVersionUID 'private static final'
521 serializable.class.without.serialversionuid.display.name=Serializable class without 'serialVersionUID'
522 serializable.class.without.serialversionuid.problem.descriptor=<code>#ref</code> does not define a 'serialVersionUID' field #loc
523
524 #dynamic
525 non.protected.constructor.in.abstract.class.display.name='public' constructor in 'abstract' class
526 unnecessary.qualifier.for.this.display.name=Unnecessary qualifier for 'this'
527 multiple.declaration.display.name=Multiple variables in one declaration
528 thread.priority.display.name=Call to 'Thread.setPriority()'
529 too.broad.scope.display.name=Scope of variable is too broad
530 infinite.loop.statement.display.name=Infinite loop statement
531 asserts.without.messages.display.name=Message missing on JUnit assertion
532 constant.naming.convention.display.name=Constant naming convention
533 constant.naming.convention.element.description=Constant
534 random.double.for.random.integer.display.name=Using 'Random.nextDouble()' to get random integer
535 test.method.without.assertion.display.name=JUnit test method without any assertions
536 string.buffer.replaceable.by.string.builder.display.name='StringBuffer' may be 'StringBuilder'
537 comparison.of.short.and.char.display.name=Comparison of 'short' and 'char' values
538 unnecessary.fully.qualified.name.display.name=Unnecessary fully qualified name
539 unnecessary.label.on.break.statement.display.name=Unnecessary label on 'break' statement
540 exception.name.doesnt.end.with.exception.display.name=Exception class name does not end with 'Exception'
541 bad.exception.declared.display.name=Prohibited exception declared
542 deserializable.class.in.secure.context.display.name=Deserializable class in secure context
543 pointless.boolean.expression.display.name=Pointless boolean expression
544 class.without.constructor.display.name=Class without constructor
545 break.statement.display.name='break' statement
546 unconditional.wait.display.name=Unconditional 'wait()' call
547 cyclomatic.complexity.display.name=Overly complex method
548 string.to.string.display.name=Redundant 'String.toString()'
549 constant.on.lhs.of.comparison.display.name=Constant on left side of comparison
550 final.class.display.name='final' class
551 labeled.statement.display.name=Labeled statement
552 notify.called.on.condition.display.name='notify()'  or 'notifyAll()' called on java.util.concurrent.locks.Condition object
553 loop.statements.that.dont.loop.display.name=Loop statement that does not loop
554 thread.run.display.name=Call to 'Thread.run()'
555 non.synchronized.method.overrides.synchronized.method.display.name=Unsynchronized method overrides synchronized method
556 constant.on.rhs.of.comparison.display.name=Constant on right side of comparison
557 synchronize.on.this.display.name=Synchronization on 'this'
558 switch.statement.with.too.many.branches.display.name='switch' statement with too many branches
559 utility.class.without.private.constructor.display.name=Utility class without private constructor
560 throw.caught.locally.display.name='throw' caught by containing 'try' statement
561 exception.from.catch.which.doesnt.wrap.display.name='throw' inside 'catch' block which ignores the caught exception
562 type.parameter.naming.convention.display.name=Type parameter naming convention
563 type.parameter.naming.convention.element.description=Type parameter
564 multiply.or.divide.by.power.of.two.display.name=Multiply or divide by power of two
565 multiply.or.divide.by.power.of.two.divide.option=Check divisions by a power of two also
566 serializable.with.unconstructable.ancestor.display.name=Serializable class with unconstructable ancestor
567 missorted.modifiers.display.name=Missorted modifiers
568 sleep.while.holding.lock.display.name=Call to 'Thread.sleep()' while synchronized
569 singleton.display.name=Singleton
570 thread.death.rethrown.display.name='java.lang.ThreadDeath' not rethrown
571 if.statement.with.too.many.branches.display.name='if' statement with too many branches
572 redundant.implements.display.name=Redundant interface declaration
573 nesting.depth.display.name=Overly nested method
574 return.this.display.name=Return of 'this'
575 busy.wait.display.name=Busy wait
576 utility.class.display.name=Utility class
577 instantiating.object.to.get.class.object.display.name=Instantiating object to get Class object
578 abstract.class.extends.concrete.class.display.name=Abstract class extends concrete class
579 parameter.naming.convention.display.name=Method parameter naming convention
580 parameter.naming.convention.element.description=Parameter
581 integer.division.in.floating.point.context.display.name=Integer division in floating point context
582 interface.naming.convention.display.name=Interface naming convention
583 interface.naming.convention.element.description=Interface
584 length.one.strings.in.concatenation.display.name=Single character string concatenation
585 length.one.string.in.indexof.display.name= Single character string argument in 'String.indexOf()' call
586 unnecessary.conditional.expression.display.name=Redundant conditional expression
587 thread.yield.display.name=Call to 'Thread.yield()'
588 confusing.floating.point.literal.display.name=Confusing floating-point literal
589 wait.not.in.loop.display.name='wait()' not in loop
590 string.concatenation.inside.string.buffer.append.display.name=String concatenation as argument to 'StringBuffer.append()' call
591 class.initializer.display.name=Non-'static' initializer
592 enumerated.class.naming.convention.display.name=Enumerated class naming convention
593 enumerated.class.naming.convention.element.description=Enumerated class
594 non.thread.safe.lazy.initialization.display.name=Unsafe lazy initialization of 'static' field
595 call.to.simple.setter.in.class.display.name=Call to simple setter from within class
596 comparison.to.nan.display.name=Comparison to Double.NaN or Float.NaN
597 instance.method.naming.convention.display.name=Instance method naming convention
598 instance.method.naming.convention.element.description=Instance method
599 unnecessary.semicolon.display.name=Unnecessary semicolon
600 fallthru.in.switch.statement.display.name=Fallthrough in 'switch' statement
601 call.to.native.method.while.locked.display.name=Call to a native method while locked
602 switch.statement.display.name='switch' statement
603 custom.classloader.display.name=Custom ClassLoader
604 nested.conditional.expression.display.name=Nested conditional expression
605 duplicate.condition.display.name=Duplicate condition in 'if' statement
606 duplicate.boolean.branch.display.name=Duplicate condition on '\\&\\&' or '||'
607 method.with.multiple.loops.display.name=Method with multiple loops
608 non.comment.source.statements.display.name=Overly long method
609 local.variable.naming.convention.display.name=Local variable naming convention
610 local.variable.naming.convention.element.description=Local variable
611 negated.if.else.display.name='if' statement with negated condition
612 class.naming.convention.display.name=Class naming convention
613 class.naming.convention.element.description=Class
614 abstract.class.naming.convention.display.name=Abstract class naming convention
615 abstract.class.naming.convention.element.description=Abstract class
616 serializable.inner.class.with.non.serializable.outer.class.display.name=Serializable non-'static' inner class with non-Serializable outer class
617 pointless.arithmetic.expression.display.name=Pointless arithmetic expression
618 method.name.same.as.class.name.display.name=Method name same as class name
619 unnecessary.temporary.on.conversion.to.string.display.name=Unnecessary temporary object in conversion to String
620 unnecessary.continue.display.name=Unnecessary 'continue' statement
621 inner.class.on.interface.display.name=Inner class of interface
622 unused.label.display.name=Unused label
623 multiple.typed.declaration.display.name=Variables of different types in one declaration
624 overly.complex.boolean.expression.display.name=Overly complex boolean expression
625 continue.statement.with.label.display.name='continue' statement with label
626 class.loader.instantiation.display.name=ClassLoader instantiation
627 return.from.finally.block.display.name='return' inside 'finally' block
628 unnecessary.boxing.display.name=Unnecessary boxing
629 annotation.naming.convention.display.name=Annotation naming convention
630 annotation.naming.convention.element.description=Annotation
631 checked.exception.class.display.name=Checked exception class
632 switch.statement.with.confusing.declaration.display.name=Local variable used and declared in different 'switch' branches
633 cast.that.loses.precision.display.name=Numeric cast that loses precision
634 manual.array.copy.display.name=Manual array copy
635 manual.array.to.collection.copy.display.name=Manual array to collection copy
636 long.literals.ending.with.lowercase.l.display.name='long' literal ending with 'l' instead of 'L'
637 overly.complex.arithmetic.expression.display.name=Overly complex arithmetic expression
638 junit.abstract.test.class.naming.convention.display.name=JUnit abstract test class naming convention
639 junit.abstract.test.class.naming.convention.element.description=Abstract JUnit test class
640 unnecessary.parentheses.display.name=Unnecessary parentheses
641 test.case.in.product.code.display.name=JUnit TestCase in product source
642 test.method.in.product.code.display.name=JUnit test method in product source
643 serializable.class.in.secure.context.display.name=Serializable class in secure context
644 static.variable.naming.convention.display.name='static' field naming convention
645 static.variable.naming.convention.element.description='static' field
646 nested.method.call.display.name=Nested method call
647 throw.from.finally.block.display.name='throw' inside 'finally' block
648 field.accessed.synchronized.and.unsynchronized.display.name=Field accessed in both synchronized and unsynchronized contexts
649 abstract.method.overrides.abstract.method.display.name=Abstract method overrides abstract method
650 static.non.final.field.display.name='static', non-'final' field
651 substring.zero.display.name=Redundant 'substring(0)' call
652 class.without.no.arg.constructor.display.name=Class without no-arg constructor
653 unnecessary.return.display.name=Unnecessary 'return' statement
654 final.static.method.display.name='static' method declared 'final'
655 constant.declared.in.abstract.class.display.name=Constant declared in abstract class
656 too.broad.catch.display.name=Overly broad 'catch' block
657 floating.point.equality.display.name=Floating point equality comparison
658 thrown.exceptions.per.method.display.name=Method with too many exceptions declared
659 public.static.array.field.display.name='public static' array field
660 await.not.in.loop.display.name='await()' not in loop
661 method.names.differ.only.by.case.display.name=Method names differing only by case
662 unsecure.random.number.generation.display.name=Insecure random number generation
663 parameters.per.method.display.name=Method with too many parameters
664 parameters.per.constructor.display.name=Constructor with too many parameters
665 unnecessary.unboxing.display.name=Unnecessary unboxing
666 extends.thread.display.name=Class directly extends 'java.lang.Thread'
667 misspelled.tear.down.display.name='teardown()' instead of 'tearDown()'
668 test.case.with.constructor.display.name=JUnit TestCase with non-trivial constructors
669 parameter.name.differs.from.overridden.parameter.display.name=Parameter name differs from parameter in overridden method
670 final.private.method.display.name='private' method declared 'final'
671 enum.switch.statement.which.misses.cases.display.name=Enum 'switch' statement that misses case
672 enum.switch.statement.which.misses.cases.option=Ignore switch statements with a default branch
673 setup.calls.super.setup.display.name='setUp()' does not call 'super.setUp()'
674 unconstructable.test.case.display.name=Unconstructable JUnit TestCase
675 volatile.long.or.double.field.display.name=Volatile long or double field
676 string.buffer.must.have.initial.capacity.display.name=StringBuffer or StringBuilder without initial capacity
677 method.may.be.static.display.name=Method may be 'static'
678 class.initializer.may.be.static.display.name=Class initializer may be 'static'
679 class.initializer.option=Only warn when the class has one or more constructors
680 class.initializer.move.code.to.constructor.quickfix=Move initializer code to constructor
681 nested.switch.statement.display.name=Nested 'switch' statement
682 c.style.array.declaration.display.name=C-style array declaration
683 final.method.in.final.class.display.name='final' method in 'final' class
684 extends.annotation.display.name=Class extends annotation interface
685 naked.notify.display.name='notify()' or 'notifyAll()' without corresponding state change
686 constant.if.statement.display.name=Constant 'if' statement
687 switch.statement.density.display.name='switch' statement with too low of a branch density
688 switch.statement.with.too.few.branches.display.name='switch' statement with too few branches
689 upper.case.field.name.not.constant.display.name=Non-constant field with upper-case name
690 unnecessary.label.on.continue.statement.display.name=Unnecessary label on 'continue' statement
691 jdbc.prepare.statement.with.non.constant.string.display.name=Call to 'Connection.prepare*()' with non-constant string
692 synchronize.on.non.final.field.display.name=Synchronization on a non-final field
693 noop.method.in.abstract.class.display.name=No-op method in abstract class
694 non.final.field.of.exception.display.name=Non-final field of exception class
695 nested.try.statement.display.name=Nested 'try' statement
696 condition.signal.display.name=Call to 'signal()' instead of 'signalAll()'
697 jdbc.execute.with.non.constant.string.display.name=Call to 'Statement.execute()' with non-constant string
698 system.set.security.manager.display.name=Call to 'System.setSecurityManager()'
699 system.set.security.manager.problem.descriptor=Call to <code>System.#ref()</code> may pose security concerns #loc
700 control.flow.statement.without.braces.display.name=Control flow statement without braces
701 trivial.if.display.name=Redundant 'if' statement
702 thread.with.default.run.method.display.name=Instantiating a Thread with default 'run()' method
703 while.loop.spins.on.field.display.name='while' loop spins on field
704 object.equals.null.display.name=Object.equals(null)
705 test.method.is.public.void.no.arg.display.name=Test method with incorrect signature
706 if.statement.with.identical.branches.display.name='if' statement with identical branches
707 multiple.return.points.per.method.display.name=Method with multiple return points
708 break.statement.with.label.display.name='break' statement with label
709 public.constructor.in.non.public.class.display.name='public' constructor in non-public class
710 questionable.name.display.name=Questionable name
711 empty.finally.block.display.name=Empty 'finally' block
712 abstract.method.overrides.concrete.method.display.name=Abstract method overrides concrete method
713 thread.stop.suspend.resume.display.name=Call to 'Thread.stop()', 'suspend()' or 'resume()'
714 constant.math.call.display.name=Constant call to 'java.lang.Math'
715 volatile.array.field.display.name=Volatile array field
716 literal.as.arg.to.string.equals.display.name='expression.equals("literal")' rather than '"literal".equals(expression)'
717 inner.class.may.be.static.display.name=Inner class may be 'static'
718 static.suite.display.name='suite()' method not declared 'static'
719 redundant.field.initialization.display.name=Redundant field initialization
720 string.buffer.to.string.in.concatenation.display.name='StringBuffer.toString()' in concatenation
721 utility.class.with.public.constructor.display.name=Utility class with 'public' constructor
722 for.loop.replaceable.by.while.display.name='for' loop may be replaced with 'while' loop
723 missing.deprecated.annotation.display.name=Missing @Deprecated annotation
724 cloneable.class.in.secure.context.display.name=Cloneable class in secure context
725 static.inheritance.display.name=Static inheritance
726 class.name.prefixed.with.package.name.display.name=Class name prefixed with package name
727 call.to.simple.getter.in.class.display.name=Call to simple getter from within class
728 class.name.differs.from.file.name.display.name=Class name differs from file name
729 protected.member.in.final.class.display.name='protected' member in 'final' class
730 load.library.with.non.constant.string.display.name=Call to 'System.loadLibrary()' with non-constant string
731 instanceof.catch.parameter.display.name='instanceof' on 'catch' parameter
732 implicit.numeric.conversion.display.name=Implicit numeric conversion
733 unnecessary.interface.modifier.display.name=Unnecessary interface modifier
734 confusing.main.method.display.name=Confusing 'main()' method
735 octal.literal.display.name=Octal integer
736 misordered.assert.equals.arguments.display.name=Misordered 'assertEquals()' arguments
737 unnecessary.constructor.display.name=Redundant no-arg constructor
738 method.name.same.as.parent.name.display.name=Method name same as parent class name
739 java.lang.reflect.display.name=Use of 'java.lang.reflect'
740 while.can.be.foreach.display.name='while' loop replaceable with 'foreach'
741 big.decimal.equals.display.name='equals()' called on java.math.BigDecimal
742 wait.not.in.synchronized.context.display.name='wait()' while not synchronized
743 implicit.call.to.super.display.name=Implicit call to 'super()'
744 empty.catch.block.display.name=Empty 'catch' block
745 unqualified.static.usage.display.name=Unqualified static access
746 simplifiable.junit.assertion.display.name=Simplifiable JUnit assertion
747 object.notify.display.name=Call to 'notify()' instead of 'notifyAll()'
748 thread.start.in.construction.display.name=Call to 'Thread.start()' during object construction
749 non.final.clone.display.name=Non-final 'clone()' in secure context
750 unnecessary.temporary.on.conversion.from.string.display.name=Unnecessary temporary object in conversion from String
751 unnecessary.this.display.name=Unnecessary 'this' qualifier
752 unnecessary.this.ignore.assignments.option=Ignore field assignments
753 runtime.exec.with.non.constant.string.display.name=Call to 'Runtime.exec()' with non-constant string
754 system.properties.display.name=Access of system properties
755 chained.method.call.display.name=Chained method calls
756 notify.not.in.synchronized.context.display.name='notify()' or 'notifyAll()' while not synchronized
757 safe.lock.display.name=Lock acquired but not safely unlocked
758 system.run.finalizers.on.exit.display.name=Call to 'System.runFinalizersOnExit()'
759 for.can.be.foreach.display.name='for' loop replaceable with 'foreach'
760 type.parameter.extends.object.display.name=Type parameter explicitly extends 'java.lang.Object'
761 marker.interface.display.name=Marker interface
762 limited.scope.inner.class.display.name=Limited-scope inner class
763 switch.statements.without.default.display.name='switch' statement without 'default' branch
764 unchecked.exception.class.display.name=Unchecked exception class
765 for.loop.with.missing.component.display.name='for' loop with missing components
766 for.loop.with.missing.component.collection.loop.option=Ignore collection iterations
767 double.checked.locking.display.name=Double-checked locking
768 double.checked.locking.problem.descriptor=Double-checked locking #loc
769 double.checked.locking.ignore.on.volatiles.option=Ignore double-checked locking on volatile fields
770 string.buffer.replaceable.by.string.display.name='StringBuffer' can be replaced with 'String'
771 boolean.method.name.must.start.with.question.display.name=Boolean method name must start with question word
772 class.name.same.as.ancestor.name.display.name=Class name same as ancestor name
773 error.rethrown.display.name='java.lang.Error' not rethrown
774 serializable.has.serialization.methods.display.name=Serializable class without 'readObject()' and 'writeObject()'
775 serializable.has.serialization.methods.ignore.option=Ignore classes that do not define instance fields
776 misspelled.set.up.display.name='setup()' instead of 'setUp()'
777 setup.is.public.void.no.arg.display.name='setUp()' with incorrect signature
778 missing.override.annotation.display.name=Missing @Override annotation
779 wait.while.holding.two.locks.display.name='wait()' while holding two locks
780 empty.class.display.name=Empty class
781 trivial.string.concatenation.display.name=Concatenation with empty string
782 empty.synchronized.statement.display.name=Empty 'synchronized' statement
783 unnecessary.default.display.name=Unnecessary 'default' for enum 'switch' statement
784 simplifiable.conditional.expression.display.name=Simplifiable conditional expression
785 simplifiable.if.statement.display.name='if' statement may be replaced with \\&\\& or || expression
786 unnecessary.super.constructor.display.name=Unnecessary call to 'super()'
787 unnecessarily.qualified.static.usage.display.name=Unnecessarily qualified static access
788 bad.exception.caught.display.name=Prohibited exception caught
789 custom.security.manager.display.name=Custom SecurityManager
790 teardown.is.public.void.no.arg.display.name='tearDown()' with incorrect signature
791 string.concatenation.in.loops.display.name=String concatenation in loop
792 boolean.constructor.display.name=Boolean constructor call
793 continue.statement.display.name='continue' statement
794 extends.object.display.name=Class explicitly extends 'java.lang.Object'
795 serializable.inner.class.has.serial.version.uid.field.display.name=Serializable non-'static' inner class without 'serialVersionUID'
796 static.method.naming.convention.display.name='static' method naming convention
797 static.method.naming.convention.element.description='static' method
798 empty.try.block.display.name=Empty 'try' block
799 field.has.setter.but.no.getter.display.name=Field has setter but no getter
800 three.negations.per.method.display.name=Method with more than three negations
801 conditional.expression.display.name=Conditional expression (?:)
802 unnecessary.enum.modifier.display.name=Unnecessary enum modifier
803 string.equals.empty.string.display.name='String.equals("")'
804 teardown.calls.super.teardown.display.name='tearDown()' does not call 'super.tearDown()'
805 synchronize.on.lock.display.name=Synchronization on a Lock object
806 synchronized.on.literal.object.name=Synchronization on an object initialized with a literal
807 field.may.be.static.display.name=Field may be 'static'
808 class.may.be.interface.display.name=Abstract class may be interface
809 abstract.class.without.abstract.methods.display.name=Abstract class without abstract methods
810 divide.by.zero.display.name=Divide by zero
811 default.not.last.case.in.switch.display.name='default' not last case in 'switch' statement
812 nested.synchronized.statement.display.name=Nested 'synchronized' statement
813 constant.conditional.expression.display.name=Constant conditional expression
814 unused.catch.parameter.display.name=Unused 'catch' parameter
815 confusing.else.display.name=Confusing 'else' branch
816 public.field.accessed.in.synchronized.context.display.name=Non-private field accessed in synchronized context
817 string.replaceable.by.string.buffer.display.name=Non-constant String should be StringBuilder
818 junit.test.class.naming.convention.display.name=JUnit test class naming convention
819 junit.test.class.naming.convention.element.description=JUnit test class
820 method.coupling.display.name=Overly coupled method
821 collections.must.have.initial.capacity.display.name=Collection without initial capacity
822 anonymous.inner.class.display.name=Anonymous inner class
823 negated.conditional.display.name=Conditional expression with negated condition
824 non.reproducible.math.call.display.name=Non-reproducible call to 'java.lang.Math'
825 multiple.top.level.classes.in.file.display.name=Multiple top level classes in single file
826 set.replaceable.by.enum.set.display.name=Set replaceable with EnumSet
827 non.static.inner.class.in.secure.context.display.name=Non-'static' inner class in secure context
828 tail.recursion.display.name=Tail recursion
829 finally.block.cannot.complete.normally.display.name='finally' block which can not complete normally
830 non.atomic.operation.on.volatile.field.display.name=Non-atomic operation on volatile field
831 public.static.collection.field.display.name='public static' collection field
832 non.exception.name.ends.with.exception.display.name=Non-exception class name ends with 'Exception'
833 synchronized.method.display.name='synchronized' method
834 enumerated.constant.naming.convention.display.name=Enumerated constant naming convention
835 enumerated.constant.naming.convention.element.description=Enumerated constant
836 final.method.display.name='final' method
837 transient.field.in.non.serializable.class.display.name=Transient field in non-serializable class
838 bad.exception.thrown.display.name=Prohibited exception thrown
839 conditional.expression.with.identical.branches.display.name=Conditional expression with identical or similar branches
840 raw.use.of.parameterized.type.display.name=Raw use of parameterized class
841 standard.variable.names.display.name=Standard variable names
842 instance.variable.naming.convention.display.name=Instance field naming convention
843 instance.variable.naming.convention.element.description=Instance field
844 dollar.sign.in.name.display.name=Use of '$' in identifier
845 map.replaceable.by.enum.map.display.name=Map replaceable with EnumMap
846 extends.concrete.collection.display.name=Class explicitly extends a Collection class
847 continue.or.break.from.finally.block.display.name='continue' or 'break' inside 'finally' block
848 abstract.method.with.missing.implementations.display.name=Abstract method with missing implementations
849 object.allocation.in.loop.display.name=Object allocation in loop
850 wait.called.on.condition.display.name='wait()' called on java.util.concurrent.locks.Condition object
851 test.case.with.no.test.methods.display.name=JUnit test case with no tests
852 abstract.class.never.implemented.display.name=Abstract class which has no concrete subclass
853 interface.never.implemented.display.name=Interface which has no concrete subclass
854 constant.declared.in.interface.display.name=Constant declared in interface
855
856
857 #problem descriptors
858 exception.name.doesnt.end.with.exception.problem.descriptor=Exception class name <code>#ref</code> does not end with 'Exception' #loc
859 non.exception.name.ends.with.exception.problem.descriptor=Non-exception class name <code>#ref</code> ends with 'Exception' #loc
860 class.name.prefixed.with.package.name.problem.descriptor=Class name <code>#ref</code> begins with its package name #loc
861 class.name.same.as.ancestor.name.problem.descriptor=Class name <code>#ref</code> is the same as one of its superclass' names #loc
862 method.name.same.as.class.name.problem.descriptor=Method name <code>#ref</code> is the same as its class name #loc
863 method.name.same.as.parent.name.problem.descriptor=Method name <code>#ref</code> is the same as its parent class name #loc
864 boolean.method.name.must.start.with.question.problem.descriptor=Boolean method name <code>#ref</code> does not start with question word #loc
865 questionable.name.problem.descriptor=Questionable name <code>#ref</code> #loc
866 confusing.main.method.problem.descriptor=Method named <code>#ref</code> without signature 'public static void main(String[])' #loc
867 upper.case.field.name.not.constant.problem.descriptor=Non-constant field <code>#ref</code> with constant-style name #loc
868 dollar.sign.in.name.problem.descriptor=Identifier <code>#ref</code> contains '$' #loc
869 integer.division.in.floating.point.context.problem.descriptor=<code>#ref</code>: integer division in floating-point context #loc
870 comparison.of.short.and.char.problem.descriptor=Equality comparison <code>#ref</code> of short and char values #loc
871 big.decimal.equals.problem.descriptor=<code>#ref()</code> between BigDecimal values should probably be 'compareTo()' #loc
872 divide.by.zero.problem.descriptor=Division by zero #loc
873 non.reproducible.math.call.problem.descriptor=<code>Math.#ref()</code> may produce non-reproducible results #loc
874 constant.math.call.problem.descriptor=Constant call to <code>#ref()</code> can be simplified #loc
875 floating.point.equality.problem.descriptor=<code>#ref</code>: floating point values compared for exact equality #loc
876 fallthru.in.switch.statement.problem.descriptor=Fallthrough in 'switch' statement #loc
877 switch.statements.without.default.problem.descriptor=<code>#ref</code> statement without 'default' branch #loc
878 default.not.last.case.in.switch.problem.descriptor=<code>#ref</code> branch not last case in 'switch' statement #loc
879 loop.statements.that.dont.loop.problem.descriptor=<code>#ref</code> statement does not loop #loc
880 conditional.expression.with.identical.branches.problem.descriptor=Conditional expression <code>#ref</code> with identical branches #loc
881 conditional.expression.with.similar.branches.problem.descriptor=Conditional expression <code>#ref</code> with similar branches #loc
882 if.statement.with.identical.branches.problem.descriptor=<code>#ref</code> statement with identical branches #loc
883 duplicate.condition.problem.descriptor=Duplicate condition <code>#ref</code> #loc
884 duplicate.condition.ignore.method.calls.option=Ignore method calls in condition
885 duplicate.boolean.branch.problem.descriptor=Duplicate branch <code>#ref</code> #loc
886 iterator.next.does.not.throw.nosuchelementexception.problem.descriptor=<code>Iterator.#ref()</code> which can't throw 'NoSuchElementException' #loc
887 infinite.loop.statement.problem.descriptor=<code>#ref</code> statement cannot complete without throwing an exception #loc
888 confusing.floating.point.literal.problem.descriptor=Confusing floating point literal <code>#ref</code> #loc
889 overly.complex.arithmetic.expression.problem.descriptor=Overly complex arithmetic expression #loc
890 overly.complex.boolean.expression.problem.descriptor=Overly complex boolean expression ({0} terms) #loc
891 labeled.statement.problem.descriptor=Labeled statement <code>#ref:</code> #loc
892 break.statement.with.label.problem.descriptor=<code>#ref</code> statement with label #loc
893 continue.statement.with.label.problem.descriptor=<code>#ref</code> statement with label #loc
894 conditional.expression.problem.descriptor=Conditional expression <code>#ref</code> #loc
895 conditional.expression.option=Ignore for simple assignments and returns
896 nested.conditional.expression.problem.descriptor=Nested conditional expression <code>#ref</code> #loc
897 long.literals.ending.with.lowercase.l.problem.descriptor='long' literal <code>#ref</code> ends with lowercase 'l' #loc
898 nested.switch.statement.problem.descriptor=Nested <code>#ref</code> statement #loc
899 chained.method.call.problem.descriptor=Chained method call <code>#ref()</code> #loc
900 nested.method.call.problem.descriptor=Nested method call <code>#ref()</code> #loc
901 octal.literal.problem.descriptor=Octal integer <code>#ref</code> #loc
902 implicit.call.to.super.problem.descriptor=Implicit call to 'super()' #loc
903 negated.if.else.problem.descriptor=<code>#ref</code> statement with negated condition #loc
904 negated.conditional.problem.descriptor=Conditional expression with negated condition #loc
905 confusing.else.problem.descriptor=<code>#ref</code> branch may be unwrapped, as the 'if' branch never completes #loc
906 switch.statement.with.confusing.declaration.problem.descriptor=Local variable <code>#ref</code> declared in one 'switch' branch and used in another #loc
907 raw.use.of.parameterized.type.problem.descriptor=Raw use of parameterized class <code>#ref</code> #loc
908 final.class.problem.descriptor=Class declared <code>#ref</code> #loc
909 empty.class.problem.descriptor=Class <code>#ref</code> is empty #loc
910 empty.class.file.without.class.problem.descriptor=Java file does not declare any class #loc
911 empty.anonymous.class.problem.descriptor=Anonymous class is empty #loc
912 anonymous.inner.class.problem.descriptor=Anonymous inner class <code>#ref</code> #loc
913 limited.scope.inner.class.problem.descriptor=Limited-scope inner class <code>#ref</code> #loc
914 final.method.problem.descriptor=Method declared <code>#ref</code> #loc
915 class.initializer.problem.descriptor=Non-'static' initializer #loc
916 class.may.be.interface.problem.descriptor=Abstract class <code>#ref</code> may be interface #loc
917 non.protected.constructor.in.abstract.class.problem.descriptor=Constructor <code>#ref()</code> is not declared 'protected' in 'abstract' class #loc
918 class.without.constructor.problem.descriptor=Class <code>#ref</code> has no constructor #loc
919 abstract.class.without.abstract.methods.problem.descriptor=Class <code>#ref</code> is declared 'abstract', and has no 'abstract' methods #loc
920 final.method.in.final.class.problem.descriptor=Method declared <code>#ref</code> in 'final' class #loc
921 protected.member.in.final.class.problem.descriptor=Class member declared <code>#ref</code> in 'final' class #loc
922 utility.class.with.public.constructor.problem.descriptor=Class <code>#ref</code> has only 'static' members, and a 'public' constructor #loc
923 utility.class.without.private.constructor.problem.descriptor=Class <code>#ref</code> has only 'static' members, and lacks a 'private' constructor #loc
924 abstract.method.overrides.concrete.method.problem.descriptor=Abstract method <code>#ref()</code> overrides concrete method #loc
925 abstract.method.with.missing.implementations.problem.descriptor=Abstract method <code>#ref()</code> is not implemented in every subclass #loc
926 abstract.method.overrides.abstract.method.problem.descriptor=Abstract method <code>#ref()</code> overrides abstract method #loc
927 abstract.method.overrides.abstract.method.ignore.different.javadoc.option=Ignore methods with different Javadoc than their super methods
928 abstract.method.overrides.abstract.method.ignore.different.annotations.option=Ignore methods with different annotations than their super methods
929 abstract.class.extends.concrete.class.problem.descriptor=Class <code>#ref</code> is declared 'abstract', and extends a concrete class #loc
930 static.non.final.field.problem.descriptor='static' non-'final' field <code>#ref</code> #loc
931 constant.declared.in.abstract.class.problem.descriptor=Constant <code>#ref</code> declared in abstract class #loc
932 constant.declared.in.interface.problem.descriptor=Constant <code>#ref</code> declared in interface #loc
933 static.inheritance.problem.descriptor=Interface <code>#ref</code> is implemented only for its 'static' constants #loc
934 utility.class.problem.descriptor=Class <code>#ref</code> has only 'static' members, indicating procedural construction #loc
935 singleton.problem.descriptor=Class <code>#ref</code> is a singleton #loc
936 final.private.method.problem.descriptor='private' method declared <code>#ref</code> #loc
937 noop.method.in.abstract.class.problem.descriptor=No-op Method <code>#ref()</code> should be made abstract #loc
938 final.static.method.problem.descriptor='static' method declared <code>#ref</code> #loc
939 class.without.no.arg.constructor.problem.descriptor=<code>#ref</code> has no no-arg constructor #loc
940 multiple.top.level.classes.in.file.problem.descriptor=Multiple top level classes in file
941 class.name.differs.from.file.name.problem.descriptor=Class name <code>#ref</code> differs from file name #loc
942 marker.interface.problem.descriptor=Marker interface <code>#ref</code> #loc
943 field.has.setter.but.no.getter.problem.descriptor=Field <code>#ref</code> has setter but no getter #loc
944 abstract.class.never.implemented.problem.descriptor=Abstract class <code>#ref</code> has no concrete subclass #loc
945 interface.never.implemented.problem.descriptor=Interface <code>#ref</code> has no concrete subclass #loc
946 missing.deprecated.annotation.problem.descriptor=Missing '@Deprecated' annotation #loc
947 missing.deprecated.tag.problem.descriptor=Missing '@deprecated' Javadoc tag explanation #loc
948 missing.deprecated.tag.option=Warn on missing @deprecated Javadoc tag explanation
949 missing.override.annotation.problem.descriptor=Missing '@Override' annotation on <code>#ref()</code> #loc
950 non.thread.safe.lazy.initialization.problem.descriptor=Lazy initialization of 'static' field <code>#ref</code> is not thread-safe #loc
951 empty.catch.block.problem.descriptor=Empty <code>#ref</code> block #loc
952 unused.catch.parameter.problem.descriptor=Unused 'catch' parameter <code>#ref</code> #loc
953 used.catch.parameter.named.ignore.problem.descriptor='catch' parameter named <code>#ref</code> is used #loc
954 empty.finally.block.problem.descriptor=Empty <code>#ref</code> block #loc
955 finally.block.cannot.complete.normally.problem.descriptor=<code>#ref</code> block can not complete normally #loc
956 empty.try.block.problem.descriptor=Empty <code>#ref</code> block #loc
957 throw.from.finally.block.problem.descriptor=<code>#ref</code> inside 'finally' block #loc
958 possible.throw.from.finally.block.problem.descriptor=<code>{0}</code> might be thrown inside ''finally'' block #loc
959 throw,from.finally.block.everywhere.option=Warn everywhere declared exceptions may be thrown
960 throw.caught.locally.problem.descriptor=<code>#ref</code> caught by containing 'try' statement #loc
961 throw.caught.locally.ignore.option=Ignore rethrown exceptions
962 return.from.finally.block.problem.descriptor=<code>#ref</code> inside 'finally' block #loc
963 continue.or.break.from.finally.block.problem.descriptor=<code>#ref</code> inside 'finally' block #loc
964 bad.exception.declared.problem.descriptor=Prohibited exception <code>#ref</code> declared #loc
965 bad.exception.caught.problem.descriptor=Prohibited exception <code>#ref</code> caught #loc
966 checked.exception.class.problem.descriptor=Checked exception class <code>#ref</code> #loc
967 unchecked.exception.class.problem.descriptor=Unchecked exception class <code>#ref</code> #loc
968 thread.death.rethrown.problem.descriptor=ThreadDeath <code>#ref</code> not rethrown #loc
969 error.rethrown.problem.descriptor=Error <code>#ref</code> not rethrown #loc
970 nested.try.statement.problem.descriptor=Nested <code>#ref</code> statement #loc
971 exception.from.catch.which.doesnt.wrap.problem.descriptor=<code>#ref</code> inside 'catch' block ignores the caught exception #loc
972 instanceof.catch.parameter.problem.descriptor='instanceof' on 'catch' parameter <code>#ref</code> #loc
973 non.final.field.of.exception.problem.descriptor=Non-final field <code>#ref</code> of exception class #loc
974 unnecessary.label.on.break.statement.problem.descriptor=Unnecessary label on <code>#ref</code> statement #loc
975 unnecessary.label.on.continue.statement.problem.descriptor=Unnecessary label on <code>#ref</code> statement #loc
976 trivial.if.problem.descriptor=<code>#ref</code> statement can be simplified #loc
977 constant.if.statement.problem.descriptor=<code>#ref</code> statement can be simplified #loc
978 unnecessary.parentheses.problem.descriptor=Parentheses around <code>#ref</code> are unnecessary #loc
979 unnecessary.local.variable.problem.descriptor=Local variable <code>#ref</code> is redundant #loc
980 unnecessary.this.problem.descriptor=<code>#ref</code> is unnecessary in this context #loc
981 unnecessary.block.statement.problem.descriptor=Braces around this statement are unnecessary #loc
982 unnecessary.continue.problem.descriptor=<code>#ref</code> is unnecessary as the last statement in a loop #loc
983 unnecessary.semicolon.problem.descriptor=Unnecessary semicolon <code>#ref</code> #loc
984 unnecessary.fully.qualified.name.problem.descriptor1=Qualifier <code>#ref</code> is unnecessary, and can be replaced with an import #loc
985 unnecessary.fully.qualified.name.problem.descriptor2=Qualifier <code>#ref</code> is unnecessary and can be removed #loc
986 unnecessary.qualifier.for.this.problem.descriptor=Qualifier <code>#ref</code> on 'this' is unnecessary in this context #loc
987 unused.label.problem.descriptor=Unused label <code>#ref</code> #loc
988 redundant.field.initialization.problem.descriptor=Field initialization to <code>#ref</code> is redundant #loc
989 redundant.implements.problem.descriptor=Redundant interface declaration <code>#ref</code> #loc
990 extends.object.problem.descriptor=Class <code>#ref</code> explicitly extends 'java.lang.Object' #loc
991 type.parameter.extends.object.problem.descriptor1=Type parameter <code>#ref</code> explicitly extends 'java.lang.Object' #loc
992 type.parameter.extends.object.problem.descriptor2=Wildcard type argument <code>#ref</code> explicitly extends 'java.lang.Object' #loc
993 unnecessary.super.constructor.problem.descriptor=<code>#ref</code> is unnecessary #loc
994 unnecessary.constructor.problem.descriptor=No-arg constructor <code>#ref()</code> is redundant #loc
995 unnecessary.constructor.annotation.option=Ignore constructors with an annotation
996 for.loop.replaceable.by.while.problem.descriptor=<code>#ref</code> loop statement may be replace by 'while' loop #loc
997 unnecessary.default.problem.descriptor=<code>#ref</code> branch is unnecessary #loc
998 unnecessary.boxing.problem.descriptor=Unnecessary boxing <code>#ref</code> #loc
999 unnecessary.unboxing.problem.descriptor=Unnecessary unboxing <code>#ref</code> #loc
1000 unnecessary.boxing.superfluous.option=Only report truly superfluously boxed expressions
1001 unnecessary.unboxing.superfluous.option=Only report truly superfluously unboxed expressions
1002 for.can.be.foreach.problem.descriptor=<code>#ref</code> loop replaceable with 'foreach' #loc
1003 while.can.be.foreach.problem.descriptor=<code>#ref</code> loop replaceable with 'foreach' #loc
1004 too.broad.scope.problem.descriptor=Scope of variable <code>#ref</code> is too broad #loc
1005 return.this.problem.descriptor=Return of <code>#ref</code> #loc
1006 constant.on.lhs.of.comparison.problem.descriptor=<code>#ref</code>: constant on left side of comparison #loc
1007 constant.on.rhs.of.comparison.problem.descriptor=<code>#ref</code>: constant on right side of comparison #loc
1008 control.flow.statement.without.braces.problem.descriptor=<code>#ref</code> without braces #loc
1009 missorted.modifiers.problem.descriptor=Missorted modifiers <code>#ref</code> #loc
1010 cstyle.array.variable.declaration.problem.descriptor=C-style array declaration of {0, choice, 1#field|2#parameter|3#local variable} <code>#ref</code> #loc
1011 cstyle.array.method.declaration.problem.descriptor=C-style array declaration of the return type of method <code>#ref()</code>#loc
1012 multiple.declaration.problem.descriptor=Multiple variables in one declaration #loc
1013 multiple.typed.declaration.problem.descriptor=Variables of different types in one declaration #loc
1014 serializable.inner.class.has.serial.version.uid.field.problem.descriptor=Inner class <code>#ref</code> does not define a 'serialVersionUID' field #loc
1015 serializable.inner.class.with.non.serializable.outer.class.problem.descriptor=Inner class <code>#ref</code> is serializable while its outer class is not #loc
1016 busy.wait.problem.descriptor=Call to <code>Thread.#ref()</code> in a loop, probably busy-waiting #loc
1017 sleep.while.holding.lock.problem.descriptor=Call to <code>Thread.#ref()</code> while synchronized #loc
1018 non.atomic.operation.on.volatile.field.problem.descriptor=Non-atomic operation on volatile field <code>#ref</code> #loc
1019 call.to.native.method.while.locked.problem.descriptor=Call to native method <code>#ref()</code> in a synchronized context #loc
1020 object.notify.problem.descriptor=<code>#ref</code> should probably be replaced with 'notifyAll()' #loc
1021 condition.signal.problem.descriptor=<code>#ref</code> should probably be replaced with 'signalAll()' #loc
1022 thread.with.default.run.method.problem.descriptor=Instantiating a <code>#ref</code> with default 'run()' method #loc
1023 extends.thread.problem.descriptor=Class <code>#ref</code> directly extends 'java.lang.Thread' #loc
1024 anonymous.extends.thread.problem.descriptor=Anonymous class directly extends 'java.lang.Thread' #loc
1025 naked.notify.problem.descriptor=Call to <code>#ref()</code> without corresponding state change #loc
1026 unconditional.wait.problem.descriptor=Unconditional call to <code>#ref()</code> #loc
1027 system.run.finalizers.on.exit.problem.descriptor=Call to <code>System.#ref()</code> #loc
1028 thread.priority.problem.descriptor=Call to <code>Thread.#ref()</code> #loc
1029 thread.yield.problem.descriptor=Call to <code>Thread.#ref()</code> #loc
1030 thread.stop.suspend.resume.problem.descriptor=Call to <code>Thread.#ref()</code> #loc
1031 while.loop.spins.on.field.problem.descriptor=<code>#ref</code> loop spins on field #loc
1032 wait.not.in.loop.problem.descriptor=Call to <code>#ref()</code> is not made in a loop #loc
1033 await.not.in.loop.problem.descriptor=Call to <code>#ref()</code> is not made in a loop #loc
1034 wait.called.on.condition.problem.descriptor=Call to <code>#ref()</code> on Condition object #loc
1035 notify.called.on.condition.problem.descriptor=Call to <code>#ref()</code> on Condition object #loc
1036 wait.not.in.synchronized.context.problem.descriptor=Call to <code>#ref</code> while not synchronized on ''{0}'' #loc
1037 wait.while.holding.two.locks.problem.descriptor=Call to <code>#ref()</code> is made while holding two locks #loc
1038 notify.not.in.synchronized.context.problem.descriptor=Call to <code>#ref()</code> is made outside of a synchronized context #loc
1039 thread.run.problem.descriptor=Calls to <code>#ref()</code> should probably be replaced with 'start()' #loc
1040 thread.start.in.construction.problem.descriptor=Call to <code>#ref</code> during object construction #loc
1041 synchronize.on.lock.problem.descriptor=Synchronization on a ''{0}'' object is unlikely to be intentional #loc
1042 synchronized.on.literal.object.problem.descriptor=Synchronization on {0} <code>#ref</code> which is initialized by a literal #loc
1043 synchronized.on.direct.literal.object.problem.descriptor=Synchronization on {0} literal <code>#ref</code> #loc
1044 synchronized.on.possibly.literal.object.problem.descriptor=Synchronization on {0} <code>#ref</code> #loc
1045 synchronize.on.non.final.field.problem.descriptor=Synchronization on a non-final field <code>#ref</code> #loc
1046 synchronized.on.literal.object.warn.on.all.option=Warn on all possible literals
1047 synchronize.on.this.problem.descriptor=Lock operations on 'this' may have unforeseen side-effects #loc
1048 synchronize.on.class.problem.descriptor=Lock operations on a class may have unforeseen side-effects #loc
1049 nested.synchronized.statement.problem.descriptor=Nested <code>#ref</code> statement #loc
1050 empty.synchronized.statement.problem.descriptor=Empty <code>#ref</code> statement #loc
1051 non.synchronized.method.overrides.synchronized.method.problem.descriptor=Unsynchronized method <code>#ref()</code> overrides synchronized method #loc
1052 public.field.accessed.in.synchronized.context.problem.descriptor=Non-private field <code>#ref</code> accessed in synchronized context  #loc
1053 field.accessed.synchronized.and.unsynchronized.problem.descriptor=Field <code>#ref</code> is accessed in both synchronized and unsynchronized contexts #loc
1054 extended.for.statement.problem.descriptor=Extended <code>#ref</code> statement #loc
1055 object.allocation.in.loop.problem.descriptor=Object allocation <code>new #ref()</code> in loop #loc
1056 instantiating.object.to.get.class.object.problem.descriptor=Instantiating object to get Class object #loc
1057 field.may.be.static.problem.descriptor=Field <code>#ref</code> may be 'static' #loc
1058 method.may.be.static.problem.descriptor=Method <code>#ref()</code> may be 'static' #loc
1059 class.initializer.may.be.static.problem.descriptor=Class initializer may be 'static' #loc
1060 map.replaceable.by.enum.map.problem.descriptor=<code>#ref</code> replaceable with 'EnumMap' #loc
1061 set.replaceable.by.enum.set.problem.descriptor=<code>#ref</code> replaceable with 'EnumSet' #loc
1062 inner.class.may.be.static.problem.descriptor=Inner class <code>#ref</code> may be 'static' #loc
1063 string.buffer.must.have.initial.capacity.problem.descriptor=<code>new #ref()</code> without initial capacity #loc
1064 string.buffer.replaceable.by.string.builder.problem.descriptor=<code>StringBuffer #ref</code> may be declared as 'StringBuilder' #loc
1065 string.buffer.replaceable.by.string.problem.descriptor=<code>{0} #ref</code> can be replaced with ''String'' #loc
1066 new.string.buffer.replaceable.by.string.problem.descriptor=<code>#ref</code> can be replaced with 'String' #loc
1067 string.replaceable.by.string.buffer.problem.descriptor=Non-constant <code>String #ref</code> should probably be declared as ''StringBuilder'' #loc
1068 collections.must.have.initial.capacity.problem.descriptor=<code>new #ref()</code> without initial capacity #loc
1069 string.concatenation.in.loops.problem.descriptor=String concatenation <code>#ref</code> in loop #loc
1070 string.concatenation.inside.string.buffer.append.problem.descriptor=String concatenation as argument to <code>{0}.#ref()</code> call #loc
1071 boolean.constructor.problem.descriptor=Boolean constructor call #loc
1072 string.to.string.problem.descriptor=<code>#ref</code> is redundant #loc
1073 substring.zero.problem.descriptor=<code>#ref</code> is redundant #loc
1074 string.buffer.to.string.in.concatenation.problem.descriptor=Calls to <code>StringBuffer.#ref()</code> in concatenation #loc
1075 tail.recursion.problem.descriptor=Tail recursive call <code>#ref()</code> #loc
1076 string.equals.empty.string.problem.descriptor=<code>#ref("")</code> can be replaced with 'length()==0' #loc
1077 string.equals.empty.string.is.empty.problem.descriptor=<code>#ref("")</code> can be replaced with 'isEmpty()' #loc
1078 random.double.for.random.integer.problem.descriptor=Using <code>Random.#ref</code> to create random integer #loc
1079 manual.array.copy.problem.descriptor=Manual array copy #loc
1080 manual.array.to.collection.copy.problem.descriptor=Manual array to collection copy #loc
1081 java.lang.reflect.problem.descriptor=Use of type <code>#ref</code> from 'java.lang.reflect' #loc
1082 call.to.simple.getter.in.class.problem.descriptor=Call to simple getter <code>#ref()</code> from within class #loc
1083 call.to.simple.setter.in.class.problem.descriptor=Call to simple setter <code>#ref()</code> from within class #loc
1084 asserts.without.messages.problem.descriptor=JUnit <code>#ref()</code> without message #loc
1085 test.case.with.constructor.problem.descriptor=Initialization logic in constructor <code>#ref()</code> instead of 'setUp()' #loc
1086 test.case.with.constructor.problem.descriptor.initializer=Initialization logic in initializer instead of 'setUp()'
1087 misspelled.set.up.problem.descriptor=<code>#ref()</code> probably be 'setUp()' #loc
1088 misordered.assert.equals.arguments.problem.descriptor=Arguments to <code>#ref()</code> in wrong order #loc
1089 misspelled.tear.down.problem.descriptor=<code>#ref()</code> method should probably be 'tearDown()' #loc
1090 static.suite.problem.descriptor=JUnit <code>#ref()</code> methods not declared 'static' #loc
1091 setup.calls.super.setup.problem.descriptor=<code>#ref()</code> does not call 'super.setUp()' #loc
1092 teardown.calls.super.teardown.problem.descriptor=<code>#ref()</code> does not call 'super.tearDown()' #loc
1093 setup.is.public.void.no.arg.problem.descriptor=<code>#ref()</code> has incorrect signature
1094 simplifiable.junit.assertion.problem.descriptor=<code>#ref()</code> can be simplified to ''{0}'' #loc
1095 teardown.is.public.void.no.arg.problem.descriptor=<code>#ref()</code> has incorrect signature #loc
1096 test.method.without.assertion.problem.descriptor=JUnit test method <code>#ref()</code> contains no assertions #loc
1097 test.case.with.no.test.methods.problem.descriptor=JUnit test case <code>#ref</code> has no tests #loc
1098 test.case.in.product.code.problem.descriptor=Test case <code>#ref</code> should probably be placed in a test source tree #loc
1099 test.method.in.product.code.problem.descriptor=Test method <code>.#ref()</code> should probably be placed in a test source tree #loc
1100 unconstructable.test.case.problem.descriptor=Test case <code>#ref</code> is not constructable by most test runners #loc
1101 deserializable.class.in.secure.context.problem.descriptor=Class <code>#ref</code> may be deserialized, compromising security #loc
1102 serializable.class.in.secure.context.problem.descriptor=Class <code>#ref</code> may be serialized, compromising security #loc
1103 cloneable.class.in.secure.context.problem.descriptor=Class <code>#ref</code> may be cloned, compromising security #loc
1104 non.final.clone.problem.descriptor=Non-final <code>#ref()</code> method, compromising security #loc
1105 non.static.inner.class.in.secure.context.problem.descriptor=Non-'static' inner class <code>#ref</code>, compromising security #loc
1106 runtime.exec.with.non.constant.string.problem.descriptor=Call to <code>Runtime.#ref()</code> with non-constant argument #loc
1107 load.library.with.non.constant.string.problem.descriptor=Call to <code>{0}.#ref()</code> with non-constant argument #loc
1108 jdbc.execute.with.non.constant.string.problem.descriptor=Call to <code>Statement.#ref()</code> with non-constant argument #loc
1109 jdbc.prepare.statement.with.non.constant.string.problem.descriptor=Call to <code>Connection.#ref()</code> with non-constant argument #loc
1110 custom.classloader.problem.descriptor=Custom ClassLoader class <code>#ref</code> #loc
1111 custom.security.manager.problem.descriptor=Custom SecurityManager class <code>#ref</code> #loc
1112 system.set.problem.descriptor=Call to <code>System.#ref()</code> may pose security concerns #loc
1113 class.loader.instantiation.problem.descriptor=Instantiation of <code>#ref</code> may pose security concerns #loc
1114 public.static.array.field.problem.descriptor='public static' array field <code>#ref</code>, compromising security #loc
1115 public.static.collection.field.problem.descriptor='public static' collection field <code>#ref</code>, compromising security #loc
1116 abstract.class.with.only.one.direct.inheritor.problem.descriptor=Abstract class <code>#ref</code> has only one direct inheritor #loc
1117
1118 #other
1119 abstract.method.overrides.abstract.method.remove.quickfix=Remove redundant abstract method declaration
1120 class.may.be.interface.convert.quickfix=Convert class to interface
1121 class.without.constructor.create.quickfix=Generate empty constructor
1122 class.without.no.arg.constructor.ignore.option=Ignore if class has default constructor
1123 extends.annotation.problem.descriptor=Class ''{0}'' implements annotation interface <code>#ref</code> #loc
1124 extends.annotation.interface.problem.descriptor=Interface ''{0}'' extends annotation interface <code>#ref</code> #loc
1125 extends.concrete.collection.problem.descriptor=Class <code>#ref</code> explicitly extends ''{0}'' #loc
1126 anonymous.extends.concrete.collection.problem.descriptor=Anonymous class explicitly extends ''{0}'' #loc
1127 inner.class.on.interface.ignore.option=Ignore inner interfaces of interfaces
1128 inner.class.on.interface.problem.descriptor=Interface ''{0}'' has inner class <code>#ref</code> #loc
1129 missing.deprecated.annotation.add.quickfix=Add @Deprecated annotation
1130 missing.override.annotation.add.quickfix=Add @Override annotation
1131 non.protected.constructor.in.abstract.class.ignore.option=Ignore for non-public classes
1132 public.constructor.in.non.public.class.problem.descriptor=Constructor is declared <code>#ref</code> in non-public class ''{0}'' #loc
1133 static.inheritance.replace.quickfix=Replace inheritance with qualified references in {0}
1134 utility.class.with.public.constructor.make.quickfix=Make {0, choice, 1#constructor|2#constructors} private
1135 utility.class.without.private.constructor.create.quickfix=Generate empty private constructor
1136 utility.class.without.private.constructor.make.quickfix=Make constructor 'private'
1137 naming.convention.problem.descriptor.short={0} name <code>#ref</code> is too short ({1} < {2}) #loc
1138 naming.convention.problem.descriptor.long={0} name <code>#ref</code> is too long ({1} > {2}) #loc
1139 naming.convention.problem.descriptor.regex.mismatch={0} name <code>#ref</code> doesn''t match regex ''{1}'' #loc
1140 constant.naming.convention.immutables.option=Only check 'static final' fields with immutable types
1141 local.variable.naming.convention.ignore.option=Ignore for-loop parameters
1142 local.variable.naming.convention.ignore.catch.option=Ignore 'catch' block parameters
1143 method.names.differ.only.by.case.problem.descriptor=Method name <code>#ref</code> and method name ''{0}'' differ only by case #loc
1144 parameter.name.differs.from.overridden.parameter.ignore.character.option=Ignore if overridden parameter contains only one character
1145 parameter.name.differs.from.overridden.parameter.ignore.library.option=Ignore if overridden parameter is from a library
1146 parameter.name.differs.from.overridden.parameter.problem.descriptor=Parameter name <code>#ref</code> is different from parameter ''{0}'' overridden #loc
1147 questionable.name.column.title=Name
1148 standard.variable.names.problem.descriptor=Variable named <code>#ref</code> doesn''t have type ''{0}'' #loc
1149 standard.variable.names.problem.descriptor2=Variable named <code>#ref</code> doesn''t have type ''{0}'' or ''{1}'' #loc
1150 standard.variable.names.ignore.override.option=Ignore for parameter names identical to super method parameters
1151 static.variable.naming.convention.mutable.option=Check 'static final' fields with a mutable type
1152 boolean.method.name.must.start.with.question.table.column.name=Boolean method name prefix
1153 conditional.expression.with.identical.branches.collapse.quickfix=Collapse conditional expression
1154 conditional.expression.with.identical.branches.push.inside.quickfix=Push conditional inside expression
1155 conditional.expression.with.identical.branches.collapse.quickfix.family=Conditional expression can be simplified
1156 confusing.else.unwrap.quickfix=Remove redundant 'else'
1157 constant.conditional.expression.problem.descriptor=<code>#ref</code> can be simplified to ''{0}'' #loc
1158 constant.conditional.expression.simplify.quickfix=Simplify
1159 enum.switch.statement.which.misses.cases.problem.descriptor=<code>#ref</code> statement on enumerated type ''{0}'' misses cases #loc
1160 for.loop.replaceable.by.while.ignore.option=Ignore 'infinite' for loops without conditions
1161 for.loop.replaceable.by.while.replace.quickfix=Replace with 'while'
1162 for.loop.with.missing.component.problem.descriptor1=<code>#ref</code> statement lacks initializer #loc
1163 for.loop.with.missing.component.problem.descriptor2=<code>#ref</code> statement lacks condition #loc
1164 for.loop.with.missing.component.problem.descriptor3=<code>#ref</code> statement lacks update #loc
1165 for.loop.with.missing.component.problem.descriptor4=<code>#ref</code> statement lacks initializer and condition #loc
1166 for.loop.with.missing.component.problem.descriptor5=<code>#ref</code> statement lacks initializer and update #loc
1167 for.loop.with.missing.component.problem.descriptor6=<code>#ref</code> statement lacks condition and update #loc
1168 for.loop.with.missing.component.problem.descriptor7=<code>#ref</code> statement lacks initializer, condition and update #loc
1169 if.statement.with.identical.branches.collapse.quickfix=Collapse 'if' statement
1170 foreach.replace.quickfix=Replace with 'foreach'
1171 unnecessary.boxing.remove.quickfix=Remove boxing
1172 unnecessary.unboxing.remove.quickfix=Remove unboxing
1173 misordered.assert.equals.arguments.flip.quickfix=Flip compared arguments
1174 setup.calls.super.setup.add.quickfix=Add call to 'super.setUp()'
1175 simplify.junit.assertion.simplify.quickfix=Simplify assertion
1176 teardown.calls.super.teardown.add.quickfix=Add call to 'super.tearDown()'
1177 test.method.is.public.void.no.arg.problem.descriptor1=Test method <code>#ref()</code> should probably not have parameters #loc
1178 test.method.is.public.void.no.arg.problem.descriptor2=Test method <code>#ref()</code> is not declared 'public void' #loc
1179 test.method.is.public.void.no.arg.problem.descriptor3=Test method <code>#ref()</code> should not be 'static' #loc
1180 system.properties.problem.descriptor=Call to <code>Integer.#ref()</code> may pose security concerns #loc
1181 system.properties.problem.descriptor1=Call to <code>Boolean.#ref()</code> may pose security concerns #loc
1182 unsecure.random.number.generation.problem.descriptor1=For security purposes, use 'java.security.SecureRandom' instead of <code>java.lang.Math.#ref()</code> #loc
1183 unsecure.random.number.generation.problem.descriptor2=For security purposes, use 'java.security.SecureRandom' instead of <code>java.util.#ref</code> #loc
1184 unsecure.random.number.generation.problem.descriptor3=For security purposes, use 'java.security.SecureRandom' instead of <code>#ref</code> #loc
1185 serializable.has.serialization.methods.problem.descriptor=Serializable class <code>#ref</code> does not define 'readObject()' or 'writeObject()' #loc
1186 serializable.has.serialization.methods.problem.descriptor1=Serializable class <code>#ref</code> does not define 'writeObject()' #loc
1187 serializable.has.serialization.methods.problem.descriptor2=Serializable class <code>#ref</code> does not define 'readObject()' #loc
1188 serializable.with.unconstructable.ancestor.problem.descriptor=<code>#ref</code> has a non-serializable ancestor ''{0}'' without no-arg constructor #loc
1189 transient.field.in.non.serializable.class.problem.descriptor=Field ''{0}'' is marked <code>#ref</code>, in non-Serializable class #loc
1190 transient.field.in.non.serializable.class.remove.quickfix=Remove 'transient'
1191 condition.signal.replace.quickfix=Replace with 'signalAll()'
1192 object.notify.replace.quickfix=Replace with 'notifyAll()'
1193 safe.lock.problem.descriptor=''{0}'' should be locked in front of a ''try'' block and unlocked in the corresponding ''finally'' block #loc
1194 synchronized.method.problem.descriptor=Method ''{0}()'' declared <code>#ref</code> #loc
1195 synchronized.method.include.option=Include native methods
1196 synchronized.method.ignore.synchronized.super.option=Ignore methods overriding a synchronized method
1197 synchronized.method.move.quickfix=Move synchronization into method
1198 thread.run.replace.quickfix=Replace with 'start()'
1199 volatile.field.problem.descriptor=Volatile field <code>#ref</code> of type ''{0}'' #loc
1200 string.format.choose.class=Choose Formatter class
1201 string.format.class.column.name=Additional formatter classes
1202 string.format.class.method.name=Additional formatter methods
1203 exception.class.column.name=Exception class
1204 bad.exception.thrown.problem.descriptor=Prohibited exception ''{0}'' thrown #loc
1205 empty.catch.block.comments.option=Comments count as content
1206 empty.catch.block.ignore.ignore.option=Ignore when 'catch' parameter is named 'ignore' or 'ignored'
1207 too.broad.catch.problem.descriptor=''catch'' of <code>#ref</code> is too broad, masking exception ''{0}'' #loc
1208 too.broad.catch.problem.descriptor1=''catch'' of <code>#ref</code> is too broad, masking exceptions ''{0}'' and ''{1}'' #loc
1209 unused.catch.parameter.ignore.catch.option=Ignore when 'catch' block contains a comment
1210 add.serialversionuidfield.quickfix=Add 'serialVersionUID' field
1211 delete.import.quickfix=Delete unnecessary import
1212 encapsulate.variable.quickfix=Encapsulate field ''{0}''
1213 extract.method.quickfix=Extract method
1214 inline.call.quickfix=Inline call
1215 inline.variable.quickfix=Inline variable
1216 pointless.nullcheck.display.name=Unnecessary 'null' check before 'instanceof' expression
1217 pointless.nullcheck.problem.descriptor=Unnecessary 'null' check before 'instanceof' expression
1218 pointless.nullcheck.after.problem.descriptor=Unnecessary 'null' check after 'instanceof' expression
1219 pointless.nullcheck.simplify.quickfix=Remove unnecessary ''{0}'' condition
1220 introduce.constant.quickfix=Introduce constant
1221 make.initialization.explicit.quickfix=Make initialization explicit
1222 move.anonymous.to.inner.quickfix=Convert to named inner class
1223 anonymous.inner.may.be.named.static.inner.class.quickfix=Convert to named 'static' inner class
1224 move.class.quickfix=Move class
1225 normalize.declaration.quickfix=Split into multiple declarations
1226 remove.modifier.quickfix=Remove ''{0}'' modifier
1227 replace.inheritance.with.delegation.quickfix=Replace inheritance with delegation
1228 big.decimal.equals.replace.quickfix=Replace with 'compareTo()==0'
1229 cast.that.loses.precision.problem.descriptor=Cast to <code>#ref</code> from ''{0}'' may result in loss of precision #loc
1230 comparison.to.nan.problem.descriptor1=Comparison to <code>#ref</code> is always false #loc
1231 comparison.to.nan.problem.descriptor2=Comparison to <code>#ref</code> is always true #loc
1232 comparison.to.nan.replace.quickfix=Replace with 'isNaN()'
1233 confusing.floating.point.literal.change.quickfix=Change to canonical form
1234 implicit.numeric.conversion.ignore.widening.conversion.option=Ignore widening conversions
1235 implicit.numeric.conversion.ignore.char.conversion.option=Ignore conversions from and to char
1236 implicit.numeric.conversion.ignore.constant.conversion.option=Ignore conversions from constants and literals
1237 implicit.numeric.conversion.problem.descriptor=Implicit numeric conversion of <code>#ref</code> from ''{0}'' to ''{1}'' #loc
1238 implicit.numeric.conversion.convert.quickfix=Convert to ''{0}''
1239 implicit.numeric.conversion.make.explicit.quickfix=Make conversion explicit
1240 long.literals.ending.with.lowercase.l.replace.quickfix=Replace 'l' with 'L'
1241 non.reproducible.math.call.replace.quickfix=Replace with 'StrictMath' call
1242 overly.complex.arithmetic.expression.max.number.option=Maximum number of terms:
1243 expression.can.be.replaced.problem.descriptor=<code>#ref</code> can be replaced with ''{0}'' #loc
1244 method.complexity.limit.option=Method complexity limit:
1245 cyclomatic.complexity.problem.descriptor=Overly complex method <code>#ref()</code> (cyclomatic complexity = {0}) #loc
1246 method.coupling.limit.option=Method coupling limit:
1247 method.coupling.problem.descriptor=<code>#ref</code> is overly coupled (# referenced classes = {0}) #loc
1248 method.with.multiple.loops.problem.descriptor=<code>#ref</code> contains {0} loops #loc
1249 return.point.limit.option=&Return point limit:
1250 multiple.return.points.per.method.problem.descriptor=<code>#ref</code> has {0} return points #loc
1251 nesting.depth.limit.option=Nesting depth limit:
1252 nesting.depth.problem.descriptor=<code>#ref</code> is overly nested (maximum nesting depth = {0}) #loc
1253 non.comment.source.statements.limit.option=Non-comment source statements limit:
1254 non.comment.source.statements.problem.descriptor=<code>#ref</code> is too long (# Non-comment source statements = {0}) #loc
1255 parameters.per.method.problem.descriptor=<code>#ref()</code> has too many parameters (num parameters = {0}) #loc
1256 parameters.per.constructor.problem.descriptor=<code>#ref()</code> has too many parameters (num parameters = {0}) #loc
1257 parameter.limit.option=Parameter limit:
1258 constructor.visibility.option=Ignore constructors with visibility:
1259 three.negations.per.method.ignore.option=Ignore negations in 'equals()' methods
1260 three.negations.per.method.ignore.assert.option=Ignore negations in 'assert' statements
1261 three.negations.per.method.problem.descriptor=<code>#ref</code> contains {0} negations #loc
1262 thrown.exceptions.per.method.problem.descriptor=<code>#ref</code> has too many exceptions declared (num exceptions = {0}) #loc
1263 thrown.exceptions.per.method.limit.option=Exceptions thrown limit:
1264 call.to.simple.getter.in.class.ignore.option=Ignore getter calls on other objects
1265 call.to.private.simple.getter.in.class.option=Only report getter is private
1266 call.to.simple.getter.in.class.inline.quickfix=Inline call to getter
1267 call.to.simple.setter.in.class.ignore.option=Ignore setter calls on other objects
1268 call.to.private.setter.in.class.option=Only report when setter is private
1269 call.to.simple.setter.in.class.inline.quickfix=Inline call to setter
1270 make.static.quickfix=Make 'static'
1271 length.one.strings.in.concatenation.replace.quickfix=Replace with character
1272 multiply.or.divide.by.power.of.two.replace.quickfix=Replace with shift
1273 boolean.expression.can.be.simplified.problem.descriptor=<code>#ref</code> can be simplified to ''{0}'' #loc
1274 trivial.string.concatenation.problem.descriptor=Empty string used in concatenation
1275 string.replace.quickfix=Replace concatenation with ''{0}''
1276 instantiating.object.to.get.class.object.replace.quickfix=Replace with direct class object access
1277 manual.array.copy.replace.quickfix=Replace with 'System.arraycopy()'
1278 manual.array.to.collection.copy.replace.quickfix=Replace with 'Collections.addAll(...,...)'
1279 method.may.be.static.only.option=Only check 'private' or 'final' methods
1280 method.may.be.static.empty.option=Ignore empty methods
1281 random.double.for.random.integer.replace.quickfix=Replace with 'nextInt()'
1282 string.buffer.replaceable.by.string.builder.replace.quickfix=Replace with 'StringBuilder'
1283 string.buffer.to.string.in.concatenation.remove.quickfix=Remove 'toString()'
1284 string.concatenation.in.loops.only.option=Only warn if string is repeatedly appended
1285 string.concatenation.inside.string.buffer.append.replace.quickfix=Replace with chained 'append()' calls
1286 string.equals.empty.string.quickfix=Replace with 'length()==0'
1287 string.equals.empty.string.isempty.quickfix=Replace with 'isEmpty()'
1288 tail.recursion.replace.quickfix=Replace tail recursion with iteration
1289 if.statement.with.too.many.branches.max.option=Maximum number of branches:
1290 if.statement.with.too.many.branches.problem.descriptor=''<code>#ref</code>'' has too many branches ({0}) #loc
1291 negated.conditional.ignore.option=Ignore '!= null' comparisons
1292 negated.conditional.invert.quickfix=Invert condition
1293 negated.if.else.ignore.negated.null.option=Ignore '!= null' comparisons
1294 negated.if.else.ignore.negated.zero.option=Ignore '!= 0' comparisons
1295 negated.if.else.invert.quickfix=Invert 'if' condition
1296 overly.complex.boolean.expression.max.terms.option=Maximum number of terms:
1297 pointless.boolean.expression.ignore.option=Ignore named constants in determining pointless expressions
1298 simplifiable.conditional.expression.problem.descriptor=<code>#ref</code> can be simplified to ''{0}'' #loc
1299 simplifiable.if.statement.problem.descriptor=<code>#ref</code> statement can be replaced with ''{0}'' #loc
1300 switch.statement.density.min.option=Minimum density of branches: %
1301 switch.statement.density.problem.descriptor=''<code>#ref</code>'' has too low of a branch density ({0}%) #loc
1302 switch.statement.with.too.few.branches.min.option=Minimum number of branches:
1303 switch.statement.with.too.few.branches.problem.descriptor=''<code>#ref</code>'' has too few branches ({0}), and should probably be replaced with an ''if'' statement #loc
1304 switch.statement.without.default.ignore.option=Ignore if all cases of an enumerated type are covered
1305 unnecessary.label.remove.quickfix=Remove label
1306 unnecessary.return.problem.descriptor=<code>#ref</code> is unnecessary as the last statement in a 'void' method #loc
1307 unnecessary.return.constructor.problem.descriptor=<code>#ref</code> is unnecessary as the last statement in a constructor #loc
1308 unused.label.remove.quickfix=Remove unused label
1309 unnecessarily.qualified.static.usage.problem.descriptor=Unnecessarily qualified static method call <code>{0}()</code> #loc
1310 unnecessarily.qualified.static.usage.problem.descriptor1=Unnecessarily qualified static access <code>{0}</code> #loc
1311 unnecessarily.qualified.static.usage.ignore.field.option=Ignore unnecessarily qualified field accesses
1312 unnecessarily.qualified.static.usage.ignore.method.option=Ignore unnecessarily qualified method calls
1313 unnecessary.interface.modifier.problem.descriptor=Modifier <code>#ref</code> is redundant for interfaces #loc
1314 unnecessary.interface.modifier.inner.interface.of.interface.problem.descriptor=Modifier <code>#ref</code> is redundant for inner interfaces #loc
1315 unnecessary.interface.modifier.problem.descriptor2=Modifier <code>#ref</code> is redundant for interface methods #loc
1316 unnecessary.interface.modifier.problem.descriptor3=Modifier <code>#ref</code> is redundant for inner classes of interfaces #loc
1317 unnecessary.interface.modifier.problem.descriptor4=Modifier <code>#ref</code> is redundant for interface fields #loc
1318 smth.unnecessary.remove.quickfix=Remove unnecessary ''{0}''
1319 unqualified.static.usage.problem.descriptor=Unqualified static method call <code>#ref()</code> #loc
1320 unqualified.static.usage.problem.descriptor1=Unqualified static field access <code>#ref</code> #loc
1321 unqualified.static.usage.ignore.field.option=Ignore unqualified field accesses
1322 unqualified.static.usage.ignore.method.option=Ignore unqualified method calls
1323 unqualified.static.usage.qualify.field.quickfix=Qualify static field access
1324 unqualified.static.usage.qualify.method.quickfix=Qualify static method call
1325 too.broad.scope.allow.option=<html>Allow initializer of variables to construct objects.<br>(Potentially unsafe: quick fix may modify semantics if the constructor has non-local side-effects)</html>
1326 too.broad.scope.only.blocks.option=Only report variables that can be moved into inner blocks
1327 too.broad.scope.narrow.quickfix=Narrow scope of ''{0}''
1328 press.escape.to.remove.highlighting.message=Press Escape to remove the highlighting
1329 unnecessary.enum.modifier.problem.descriptor=Modifier <code>#ref</code> is redundant for enum constructors #loc
1330 unnecessary.enum.modifier.problem.descriptor1=Modifier <code>#ref</code> is redundant for inner enums #loc
1331 literal.as.arg.to.string.equals.problem.descriptor=<code>#ref</code> is argument of ''{0}()'', instead of its target #loc
1332 literal.as.arg.to.string.equals.flip.quickfix=Flip 'equals()'
1333 c.style.array.declaration.replace.quickfix=Replace with Java-style array declaration
1334 chained.method.call.ignore.option=Ignore chained method calls in field initializers
1335 chained.method.call.ignore.this.super.option=Ignore chained method calls in 'this()' and 'super()' calls
1336 introduce.variable.quickfix=Introduce variable
1337 introduce.variable.may.change.semantics.quickfix=Introduce variable (may change semantics)
1338 flip.comparison.quickfix=Flip comparison
1339 control.flow.statement.without.braces.add.quickfix=Add braces
1340 extends.object.remove.quickfix=Remove redundant 'extends Object'
1341 implicit.call.to.super.ignore.option=Ignore for direct subclasses of 'java.lang.Object'
1342 implicit.call.to.super.make.explicit.quickfix=Make call to 'super()' explicit
1343 missorted.modifiers.require.option=Require annotations to be sorted before keywords
1344 missorted.modifiers.sort.quickfix=Sort modifiers
1345 nested.method.call.ignore.option=Ignore nested method calls in field initializers
1346 ignore.calls.to.static.methods=Ignore calls to static methods
1347 ignore.calls.to.property.getters=Ignore calls to property getters
1348 redundant.field.initialization.remove.quickfix=Remove initializer
1349 redundant.implements.remove.quickfix=Remove redundant interface declaration
1350 unnecessary.constructor.remove.quickfix=Remove redundant constructor
1351 unnecessary.fully.qualified.name.replace.quickfix=Replace with import
1352 unnecessary.fully.qualified.name.remove.quickfix=Remove qualification
1353 unnecessary.fully.qualified.name.status.bar.escape.highlighting.message={0} fully qualified {0, choice, 1#name|2#names} replaced with import (press Escape to remove highlighting)
1354 unnecessary.parentheses.remove.quickfix=Remove unnecessary parentheses
1355 unnecessary.qualifier.for.this.remove.quickfix=Remove unnecessary qualifier
1356 unnecessary.semicolon.remove.quickfix=Remove unnecessary semicolon
1357 unnecessary.super.constructor.remove.quickfix=Remove unnecessary 'super()'
1358 unnecessary.this.remove.quickfix=Remove unnecessary 'this' qualifier
1359 overly.strong.type.cast.problem.descriptor=Cast to <code>#ref</code> can be weakened to ''{0}'' #loc
1360 field.count.inspection.include.constant.fields.in.count.checkbox=Include constant fields in count
1361 field.count.inspection.static.final.fields.count.as.constant.checkbox='static final' fields count as constant
1362 field.count.inspection.include.enum.constants.in.count=Include enum constants in count
1363 make.method.final.fix.name=Make method ''{0}()'' ''final''
1364 make.class.final.fix.name=Make class ''{0}'' ''final''
1365 non.boolean.method.name.must.not.start.with.question.display.name=Non-boolean method name must not start with question word
1366 non.boolean.method.name.must.not.start.with.question.problem.descriptor=Non-boolean method name <code>#ref</code> starts with a question word #loc
1367 boolean.constructor.simplify.quickfix=Simplify
1368 unnecessary.temporary.on.conversion.from.string.problem.descriptor=<code>#ref</code> #loc can be simplified to ''{0}''
1369 unnecessary.temporary.on.conversion.from.string.fix.name=Replace with ''{0}''
1370 only.report.qualified.static.usages.option=Only report qualified static access from a static context
1371 unqualified,static.usage.only.report.static.usages.option=Only report static access from a non-static context
1372 assignment.to.catch.block.parameter.problem.descriptor=Assignment to 'catch' block parameter <code>#ref</code> #loc
1373 assignment.to.method.parameter.problem.descriptor=Assignment to method parameter <code>#ref</code> #loc
1374 value.of.post.increment.problem.descriptor=Value of post-increment expression <code>#ref</code> is used #loc
1375 value.of.post.decrement.problem.descriptor=Value of post-decrement expression <code>#ref</code> is used #loc
1376 value.of.pre.increment.problem.descriptor=Value of pre-increment expression <code>#ref</code> is used #loc
1377 value.of.pre.decrement.problem.descriptor=Value of pre-decrement expression <code>#ref</code> is used #loc
1378 assignment.replaceable.with.operator.assignment.problem.descriptor=<code>#ref</code> could be simplified to ''{0}'' #loc
1379 assignment.replaceable.with.operator.assignment.ignore.conditional.operators.option=Ignore conditional operators
1380 assignment.replaceable.with.operator.assignment.ignore.obscure.operators.option=Ignore the obscure ^ and % operators
1381 assignment.replaceable.with.operator.replace.quickfix=Replace ''='' with ''{0}=''
1382 object.equality.ignore.between.objects.of.a.type.with.only.private.constructors.option=Ignore '==' between objects of a type with only private constructors
1383 redundant.method.override.display.name=Method is identical to its super method
1384 redundant.method.override.problem.descriptor=Method <code>#ref()</code> is identical to its super method #loc
1385 redundant.method.override.quickfix=Remove redundant method
1386 refused.bequest.problem.descriptor=Method <code>#ref()</code> ignores defined method in superclass #loc
1387 refused.bequest.ignore.empty.super.methods.option=Ignore empty super methods
1388 overly.complex.boolean.expression.ignore.option=Ignore pure conjunctions and disjunctions
1389 pointless.indexof.comparison.display.name=Pointless 'indexOf()' comparison
1390 pointless.indexof.comparison.always.true.problem.descriptor=<code>#ref</code> is always true #loc
1391 pointless.indexof.comparison.always.false.problem.descriptor=<code>#ref</code> is always false #loc
1392 reuse.of.local.variable.problem.descriptor=Reuse of local variable <code>#ref</code> #loc
1393 single.character.startswith.display.name=Single character 'startsWith()' or 'endsWith()'
1394 single.character.startswith.problem.descriptor=Single character <code>#ref()</code> could be replaced with 'charAt()' expression #loc
1395 indexof.replaceable.by.contains.display.name='indexOf()' expression is replaceable with 'contains()'
1396 replace.indexof.with.contains.quickfix=Replace 'indexOf()' with 'contains()'
1397 overloaded.methods.with.same.number.parameters.problem.descriptor=Multiple methods named <code>#ref</code> with the same number of parameters #loc
1398 overloaded.vararg.method.problem.descriptor=Overloaded variable argument method <code>#ref()</code> #loc
1399 overloaded.vararg.constructor.problem.descriptor=Overloaded variable argument constructor <code>#ref()</code> #loc
1400 cached.number.constructor.call.display.name=Number constructor call with primitive argument
1401 cached.number.constructor.call.problem.descriptor=Number constructor call with primitive argument #loc
1402 cached.number.constructor.call.quickfix=Replace with ''{0}.valueOf()'' call
1403 cached.number.constructor.call.ignore.string.arguments.option=Ignore new number expressions with a String argument
1404 chained.equality.comparisons.problem.descriptor=Chained equality comparison <code>#ref</code> #loc
1405 confusing.octal.escape.sequence.problem.descriptor=Octal escape sequence <code>#ref</code> immediately followed by digit #loc
1406 field.accessed.synchronized.and.unsynchronized.option=Simple getters and setters are considered field accesses too
1407 method.overrides.package.local.method.display.name=Method overrides package-private method of superclass located in other package
1408 method.overrides.package.local.method.problem.descriptor=Method <code>#ref()</code> overrides a package-private method of a superclass located in another package #loc
1409 suspicious.to.array.call.display.name=Suspicious 'Collection.toArray()' call
1410 suspicious.to.array.call.problem.descriptor=Array of type ''{0}[]'' expected #loc
1411 suspicious.system.arraycopy.display.name=Suspicious 'System.arraycopy()' call
1412 suspicious.system.arraycopy.problem.descriptor1=Parameter 'srcPos' may not be negative #loc
1413 suspicious.system.arraycopy.problem.descriptor2=Parameter 'destPos' may not be negative #loc
1414 suspicious.system.arraycopy.problem.descriptor3=Parameter 'length' may not be negative #loc
1415 suspicious.system.arraycopy.problem.descriptor4=<code>#ref</code> is not of an array type #loc
1416 suspicious.system.arraycopy.problem.descriptor5=<code>#ref</code> is not of an array type #loc
1417 suspicious.system.arraycopy.problem.descriptor6=Source parameter type ''{0}'' is not assignable to destination parameter <code>#ref</code> of type ''{1}'' #loc
1418 raw.use.of.parameterized.type.ignore.new.objects.option=Ignore construction of new objects
1419 raw.use.of.parameterized.type.ignore.type.casts.option=Ignore type casts
1420 raw.use.of.parameterized.type.ignore.uncompilable.option=Ignore where a type parameter would not compile
1421 raw.use.of.parameterized.type.ignore.overridden.parameter.option=Ignore parameter types of overriding methods
1422 method.only.used.from.inner.class.display.name=Private method only used from inner class
1423 method.only.used.from.inner.class.problem.descriptor.anonymous.extending=Method <code>#ref()</code>#loc is only used from an anonymous class extending ''{0}'' #loc
1424 method.only.used.from.inner.class.problem.descriptor.anonymous.implementing=Method <code>#ref()</code>#loc is only used from an anonymous class implementing ''{0}'' #loc
1425 method.only.used.from.inner.class.problem.descriptor=Method <code>#ref()</code>#loc is only used from inner class ''{0}'' #loc
1426 method.only.used.from.inner.class.ignore.option=Ignore methods accessed from an &anonymous class
1427 ignore.static.methods.accessed.from.a.non.static.inner.class=Ignore '&static' methods accessed from a non-'static' inner class
1428 only.report.static.methods=&Only report 'static' methods
1429 format.decode.error.requires.both.0.and.1=requires both {0} and {1}
1430 format.decode.any=any
1431 format.decode.date.time=Date/Time
1432 format.decode.char=char
1433 format.decode.integer.type=integer type
1434 format.decode.floating.point=floating point
1435 single.character.startswith.quickfix=Replace with 'charAt()'
1436 interface.never.implemented.option=Ignore interfaces which only declare constants
1437 size.replaceable.by.isempty.display.name='size() == 0' replaceable with 'isEmpty()'
1438 size.replaceable.by.isempty.quickfix=Replace with 'isEmpty()'
1439 size.replaceable.by.isempty.negation.ignore.option=Ignore expressions which would be replaced with '!isEmpty()'
1440 ignored.classes.table=Ignored classes
1441 choose.class.type.to.ignore=Choose class type to ignore
1442 loop.condition.not.updated.inside.loop.display.name=Loop variable not updated inside loop
1443 loop.variable.not.updated.inside.loop.problem.descriptor=Variable '#ref' is not updated inside loop #loc
1444 loop.condition.not.updated.inside.loop.problem.descriptor=Condition '#ref' is not updated inside loop #loc
1445 utility.class.without.private.constructor.option=Ignore classes with only a main method
1446 super.class.logger.option=Ignore classes with an accessible logger declared in a superclass
1447 static.method.only.used.in.one.class.display.name='static' method only used from one other class
1448 static.method.only.used.in.one.class.problem.descriptor='static' method <code>#ref()</code> is only used from class ''{0}'' #loc
1449 static.method.only.used.in.one.class.problem.descriptor.anonymous.implementing='static' method <code>#ref()</code> is only used from an anonymous class implementing ''{0}'' #loc
1450 static.method.only.used.in.one.class.problem.descriptor.anonymous.extending='static' method <code>#ref()</code> is only used from an anonymous class extending ''{0}'' #loc
1451 static.method.only.used.in.one.class.quickfix=Move method
1452 static.method.only.used.in.one.class.ignore.test.option=Ignore when only used from a test class
1453 static.method.only.used.in.one.class.ignore.anonymous.option=Ignore when only used from an anonymous class
1454 static.method.only.used.in.one.class.ignore.on.conflicts=Ignore when the method cannot be moved without conflicts
1455 unary.plus.display.name=Unary plus
1456 unary.plus.problem.descriptor=Unary <code>#ref</code> operator #loc
1457 await.without.corresponding.signal.display.name='await()' without corresponding 'signal()'
1458 await.without.corresponding.signal.problem.descriptor=Call to <code>#ref</code> without corresponding <code>signal()</code> or <code>signalAll()</code> #loc
1459 signal.without.corresponding.await.display.name='signal()' without corresponding 'await()'
1460 signal.without.corresponding.await.problem.descriptor=Call to <code>#ref</code> without corresponding <code>await()</code> #loc
1461 wait.without.corresponding.notify.display.name='wait()' without corresponding 'notify()'
1462 wait.without.corresponding.notify.problem.descriptor=Call to <code>#ref</code> without corresponding <code>notify()</code> or <code>notifyAll()</code> #loc
1463 notify.without.corresponding.wait.display.name='notify()' without corresponding 'wait()'
1464 notify.without.corresponding.wait.problem.descriptor=Call to <code>#ref</code> without corresponding <code>wait()</code> #loc
1465 integer.multiplication.implicit.cast.to.long.display.name=Integer multiplication or shift implicitly cast to long
1466 integer.multiplication.implicit.cast.to.long.problem.descriptor=#ref: integer multiplication implicitly cast to long #loc
1467 integer.shift.implicit.cast.to.long.problem.descriptor=#ref: integer shift implicitly cast to long #loc
1468 integer.multiplication.implicit.cast.to.long.option=<html>Ignore compile time constant expressions which do not overflow</html>
1469 wait.or.await.without.timeout.display.name='wait()' or 'await()' without timeout
1470 wait.or.await.without.timeout.problem.descriptor=<code>#ref</code> without timeout #loc
1471 method.return.always.constant.display.name=Method returns per-class constant
1472 method.return.always.constant.problem.descriptor=Method <code>#ref()</code> returns a per-class constant
1473 class.with.too.many.dependencies.display.name=Class with too many dependencies
1474 class.with.too.many.dependencies.problem.descriptor=Class ''{0}'' has too many dependencies ({1} > {2})
1475 class.with.too.many.transitive.dependencies.display.name=Class with too many transitive dependencies
1476 class.with.too.many.transitive.dependencies.problem.descriptor=Class ''{0}'' has too many transitive dependencies ({1} > {2})
1477 class.with.too.many.dependents.display.name=Class with too many dependents
1478 class.with.too.many.dependents.problem.descriptor=Class ''{0}'' has too many dependents ({1} > {2})
1479 class.with.too.many.transitive.dependents.display.name=Class with too many transitive dependents
1480 class.with.too.many.transitive.dependents.problem.descriptor=Class ''{0}'' has too many transitive dependencies ({1} > {2})
1481 class.with.too.many.dependencies.max.option=Maximum number of dependencies
1482 class.with.too.many.dependents.max.option=Maximum number of dependents
1483 class.with.too.many.transitive.dependencies.max.option=Maximum number of transitive dependencies
1484 class.with.too.many.transitive.dependents.max.option=Maximum number of transitive dependents
1485 cyclic.class.dependency.display.name=Cyclic class dependency
1486 cyclic.class.dependency.problem.descriptor=Class ''{0}'' is cyclically dependent on {1} other classes
1487 cyclic.class.dependency.1.problem.descriptor=Class ''{0}'' is cyclically dependent on class ''{1}''
1488 cyclic.class.dependency.2.problem.descriptor=Class ''{0}'' is cyclically dependent on classes ''{1}'' and ''{2}''
1489 cyclic.package.dependency.display.name=Cyclic package dependency
1490 cyclic.package.dependency.problem.descriptor=Package ''{0}'' is cyclically dependent on {1} other packages
1491 cyclic.package.dependency.1.problem.descriptor=Package ''{0}'' is cyclically dependent on package ''{1}''
1492 cyclic.package.dependency.2.problem.descriptor=Package ''{0}'' is cyclically dependent on packages ''{1}'' and ''{2}''
1493 class.unconnected.to.package.display.name=Class independent of its package
1494 class.unconnected.to.package.problem.descriptor=Class <code>#ref</code> has no dependencies or dependents in its package
1495 package.with.too.many.classes.display.name=Package with too many classes
1496 package.with.too.many.classes.problem.descriptor=Package ''{0}'' contains too many classes ({1} > {2})
1497 package.with.too.many.classes.max.option=Maximum number of classes:
1498 package.with.too.few.classes.display.name=Package with too few classes
1499 package.with.too.few.classes.problem.descriptor=Package ''{0}'' contains too few classes ({1} < {2})
1500 package.with.too.few.classes.min.option=Minimum number of classes:
1501 module.with.too.many.classes.display.name=Module with too many classes
1502 module.with.too.many.classes.problem.descriptor=Module ''{0}'' contains too many classes ({1} > {2})
1503 module.with.too.many.classes.max.option=Maximum number of classes:
1504 module.with.too.few.classes.display.name=Module with too few classes
1505 module.with.too.few.classes.problem.descriptor=Module ''{0}'' contains too few classes ({1} < {2})
1506 module.with.too.few.classes.min.option=Minimum number of classes:
1507 package.in.multiple.modules.display.name=Package with classes in multiple modules
1508 package.in.multiple.modules.problem.descriptor=Package ''{0}'' has classes in multiple modules
1509 disjoint.package.display.name=Package with disjoint dependency graph
1510 disjoint.package.problem.descriptor=Package {0} can be decomposed into {1} independent packages
1511 package.naming.convention.display.name=Package naming convention
1512 package.naming.convention.problem.descriptor.short=Package name <code>{0}</code> is too short
1513 package.naming.convention.problem.descriptor.long=Package name <code>{0}</code> is too long
1514 package.naming.convention.problem.descriptor.regex.mismatch=Package name <code>{0}</code> doesn''t match regex ''{1}''
1515 cyclic.class.initialization.display.name=Cyclic class initialization dependency
1516 cyclic.class.initialization.problem.descriptor=Initialization of class ''{0}'' is cyclically dependent on {1} other classes
1517 before.or.after.is.public.void.no.arg.display.name=Malformed @Before or @After method
1518 before.or.after.is.public.void.no.arg.problem.descriptor=<code>#ref()</code> has incorrect signature for a @Before or @After method #loc
1519 before.class.or.after.class.is.public.static.void.no.arg.display.name=Malformed @BeforeClass or @AfterClass method
1520 before.class.or.after.class.is.public.static.void.no.arg.problem.descriptor=<code>#ref()</code> has incorrect signature for a @BeforeClass or @AfterClass method #loc
1521 string.constructor.display.name=Redundant String constructor call
1522 string.constructor.problem.descriptor=<code>#ref</code> is redundant #loc
1523 string.constructor.replace.arg.quickfix=Replace with arg
1524 string.constructor.replace.empty.quickfix=Replace with empty string
1525 string.constructor.substring.parameter.option=Ignore string constructor calls with a 'substring()' call argument
1526 design.for.extension.display.name=Design for extension
1527 design.for.extension.problem.descriptor=Method <code>#ref()</code> may be overridden and its functionality ignored #loc
1528 bad.oddness.display.name=Suspicious test for oddness
1529 bad.oddness.problem.descriptor=Test for oddness <code>#ref</code> will fail on negative values #loc
1530 comparator.not.serializable.display.name=Comparator class not declared Serializable
1531 comparator.not.serializable.problem.descriptor=Comparator class <code>#ref</code> is not declared as Serializable #loc
1532 non.serializable.field.in.serializable.class.display.name=Non-serializable field in a Serializable class
1533 non.serializable.field.in.serializable.class.problem.descriptor=Non-serializable field '#ref' in a Serializable class #loc
1534 non.serializable.object.passed.to.object.stream.display.name=Non-serializable object passed to ObjectOutputStream
1535 non.serializable.object.passed.to.object.stream.problem.descriptor=Non-serializable object passed to ObjectOutputStream #loc
1536 non.serializable.object.bound.to.http.session.display.name=Non-serializable object bound to HttpSession
1537 non.serializable.object.bound.to.http.session.problem.descriptor=Non-serializable object bound to HttpSession #loc
1538 reflection.for.unavailable.annotation.display.name=Reflective access to a source-only annotation
1539 reflection.for.unavailable.annotation.problem.descriptor=Annotation '#ref' is not retained for reflective access #loc
1540 access.to.static.field.locked.on.instance.display.name=Access to static field locked on instance data
1541 access.to.static.field.locked.on.instance.problem.descriptor=Access to static field <code>#ref</code> locked on instance data #loc
1542 make.method.ctr.quickfix=Make method constructor
1543 replace.all.dot.display.name=Call to String.replaceAll(".", ...)
1544 replace.all.dot.problem.descriptor=Call to <code>String.#ref(".", ...)</code> #loc
1545 constant.string.intern.display.name=Call to 'intern()' on String constant
1546 constant.string.intern.problem.descriptor=<code>.#ref()</code> on compile-time constant is unnecessary #loc
1547 constant.string.intern.quickfix=Remove 'intern()' call
1548 class.extends.utility.class.display.name=Class extends utility class
1549 class.extends.utility.class.problem.descriptor=Class <code>#ref</code> extends utility class ''{0}'' #loc
1550 class.extends.utility.class.ignore.utility.class.option=Ignore if overriding class is a utility class
1551 public.constructor.in.non.public.class.quickfix=Make constructor ''{0}''
1552 assignment.to.method.parameter.ignore.transformation.option=<html>Ignore if assignment is a transformation of the original parameter</html>
1553 type.parameter.extends.final.class.display.name=Type parameter extends final class
1554 type.parameter.extends.final.class.problem.descriptor1=Type parameter <code>#ref</code> extends ''final'' class ''{0}'' #loc
1555 type.parameter.extends.final.class.problem.descriptor2=Wildcard type argument <code>#ref</code> extends ''final'' class ''{0}'' #loc
1556 type.parameter.extends.final.class.quickfix=Replace type parameter with actual class
1557 double.negation.display.name=Double negation
1558 double.negation.problem.descriptor=Double negation in <code>#ref</code> #loc
1559 double.negation.quickfix=Remove double negation
1560 exception.from.catch.which.doesntwrap.ignore.option=Ignore if result of exception method call is used
1561 exception.from.catch.which.doesntwrap.ignore.cant.wrap.option=Ignore if thrown exception cannot wrap an exception
1562 comparable.implemented.but.equals.not.overridden.display.name=Comparable implemented but 'equals()' not overridden
1563 comparable.implemented.but.equals.not.overridden.problem.descriptor=Class <code>#ref</code> implements 'java.lang.Comparable' but does not override 'equals()' #loc
1564 unqualified.field.access.display.name=Instance field access not qualified with 'this'
1565 unqualified.field.access.problem.descriptor=Instance field access <code>#ref</code> is not qualified with 'this' #loc
1566 unqualified.method.access.display.name=Instance method call not qualified with 'this'
1567 unqualified.method.access.problem.descriptor=Instance method call <code>#ref</code> is not qualified with 'this' #loc
1568 add.this.qualifier.quickfix=Add 'this' qualifier
1569 while.loop.spins.on.field.ignore.non.empty.loops.option=Only warn if the loop is empty
1570 method.may.be.synchronized.problem.descriptor=Method <code>#ref()</code> with synchronized block could be synchronized method #loc
1571 method.may.be.synchronized.display.name=Method with synchronized block could be synchronized method
1572 method.may.be.synchronized.quickfix=Make method synchronized and remove synchronized block
1573 fallthru.in.switch.statement.quickfix=Add 'break'
1574 law.of.demeter.display.name=Method call violates Law of Demeter
1575 law.of.demeter.problem.descriptor=<code>#ref()</code> call violates Law of Demeter #loc
1576 law.of.demeter.ignore.library.calls.option=Ignore calls on library methods
1577 assertequals.between.inconvertible.types.display.name='assertEquals()' between objects of inconvertible types
1578 assertequals.between.inconvertible.types.problem.descriptor=<code>#ref()</code> between objects of inconvertible types ''{0}'' and ''{1}'' #loc
1579 enumeration.can.be.iteration.display.name=Enumeration can be iteration
1580 enumeration.can.be.iteration.problem.descriptor=<code>#ref()</code> can be replaced with ''{0}'' construct #loc
1581 enumeration.can.be.iteration.quickfix=Replace with 'Iterator' construct
1582 equals.hashcode.called.on.url.display.name='equals()' or 'hashCode()' called on java.net.URL object
1583 equals.hashcode.called.on.url.problem.descriptor=Call to <code>#ref()</code> on URL object #loc
1584 collection.contains.url.problem.decriptor={0} <code>#ref</code> may contain URL objects #loc
1585 collection.contains.url.display.name=Map or Set may contain java.net.URL objects
1586 implicit.array.to.string.problem.descriptor=Implicit call to 'toString()' on array <code>#ref</code> #loc
1587 explicit.array.to.string.problem.descriptor=Call to '#ref()' on array #loc
1588 implicit.array.to.string.method.call.problem.descriptor=Implicit call to 'toString()' on array returned by call to <code>#ref</code> #loc
1589 implicit.array.to.string.display.name=Call to 'toString()' on array
1590 implicit.array.to.string.quickfix=Wrap with ''{0}'' expression
1591 suspicious.indent.after.control.statement.problem.descriptor=<code>#ref</code> statement has suspicious indentation #loc
1592 suspicious.indent.after.control.statement.display.name=Suspicious indentation after control statement without braces
1593 unpredictable.big.decimal.constructor.call.display.name=Unpredictable BigDecimal constructor call
1594 unpredictable.big.decimal.constructor.call.problem.descriptor=Unpredictable <code>new #ref()</code> call #loc
1595 unpredictable.big.decimal.constructor.call.ignore.references.option=Ignore constructor calls with variable or method call arguments
1596 unpredictable.big.decimal.constructor.call.ignore.complex.literals.option=Ignore constructor calls with multiple literals (e.g. 0.1 + 0.2)
1597 unpredictable.big.decimal.constructor.call.quickfix=Replace with ''{0}''
1598 unnecessary.unary.minus.display.name=Unnecessary unary minus
1599 unnecessary.unary.minus.problem.descriptor=Unnecessary unary minus #loc
1600 unnecessary.unary.minus.quickfix=Remove unary minus and invert parent operation sign
1601 make.field.final.quickfix=Make ''{0}'' ''final''
1602 increment.decrement.used.as.expression.quickfix=Extract ''{0}'' to separate statement
1603 ignore.classes.in.hierarchy.column.name=Ignore subclasses of
1604 overly.strong.type.cast.ignore.in.matching.instanceof.option=Ignore casts with a matching instanceof expression
1605 return.of.collection.field.quickfix=Replace with ''{0}''
1606 access.to.non.thread.safe.static.field.from.instance.display.name=Non thread-safe static field access
1607 access.to.non.thread.safe.static.field.from.instance.field.problem.descriptor=Access to non thread-safe static field <code>#ref</code> of type ''{0}'' #loc
1608 access.to.non.thread.safe.static.field.from.instance.option.title=Non thread-safe classes
1609 access.to.non.thread.safe.static.field.from.instance.class.chooser.title=Choose non thread-safe class
1610 transient.field.not.initialized.display.name=Transient field is not initialized on deserialization
1611 transient.field.not.initialized.problem.descriptor=Transient field <code>#ref</code> not initialized on deserialization #loc
1612 call.to.string.concat.can.be.replaced.by.operator.display.name=Call to 'String.concat()' can be replaced with '+'
1613 call.to.string.concat.can.be.replaced.by.operator.problem.descriptor=Call to <code>#ref()</code> can be replaced with '+' expression #loc
1614 call.to.string.concat.can.be.replaced.by.operator.quickfix=Replace 'concat()' call with '+'
1615 new.string.buffer.with.char.argument.display.name=StringBuffer constructor call with 'char' argument
1616 new.string.buffer.with.char.argument.problem.descriptor=<code>new #ref()</code> with argument of type 'char' #loc
1617 new.string.buffer.with.char.argument.quickfix=Replace char argument with String literal
1618 comparator.method.parameter.not.used.display.name='Comparator.compare()' method does not use parameter
1619 comparator.method.parameter.not.used.problem.descriptor='compare()' parameter <code>#ref</code> is not used #loc
1620 to.array.call.with.zero.length.array.argument.display.name=Call to 'Collection.toArray()' with zero-length array argument
1621 to.array.call.with.zero.length.array.argument.problem.descriptor=Call to <code>#ref()</code> with zero-length array argument ''{0}'' #loc
1622 to.array.call.with.zero.length.array.argument.quickfix=Replace argument with correctly sized array
1623 throwable.instance.never.thrown.display.name=Throwable instance not thrown
1624 throwable.instance.never.thrown.runtime.exception.problem.descriptor=Runtime exception instance <code>#ref</code> is not thrown #loc
1625 throwable.instance.never.thrown.checked.exception.problem.descriptor=Checked exception instance <code>#ref</code> is not thrown #loc
1626 throwable.instance.never.thrown.error.problem.descriptor=Error instance <code>#ref</code> is not thrown #loc
1627 throwable.instance.never.thrown.problem.descriptor=Throwable instance <code>#ref</code> is not thrown #loc
1628 type.may.be.weakened.display.name=Type may be weakened
1629 type.may.be.weakened.problem.descriptor=Type of variable <code>#ref</code> may be weakened to {0} #loc
1630 type.may.be.weakened.method.problem.descriptor=Return type of method <code>#ref()</code> may be weakened to {0} #loc
1631 type.may.be.weakened.parameter.problem.descriptor=Type of parameter <code>#ref</code> may be weakened to {0} #loc
1632 type.may.be.weakened.field.problem.descriptor=Type of field <code>#ref</code> may be weakened to {0} #loc
1633 type.may.be.weakened.quickfix=Weaken type to ''{0}''
1634 type.may.be.weakened.ignore.option=Use &righthand type as weakest type in assignments
1635 type.may.be.weakened.collection.method.option=Use &parameterized type of collection for method call arguments
1636 type.may.be.weakened.do.not.weaken.to.object.option=Do not &weaken to 'java.lang.Object'
1637 ignore.guard.clauses.option=Ignore &guard clauses
1638 ignore.for.equals.methods.option=Ignore for '&equals()' methods
1639 caught.exception.immediately.rethrown.display.name=Caught exception is immediately rethrown
1640 caught.exception.immediately.rethrown.problem.descriptor=Caught exception <code>#ref</code> is immediately rethrown #loc
1641 delete.catch.section.quickfix=Delete 'catch' section
1642 remove.try.catch.quickfix=Remove 'try catch' statement
1643 loop.with.implicit.termination.condition.display.name=Loop with implicit termination condition
1644 loop.with.implicit.termination.condition.dowhile.problem.descriptor=<code>#ref-while</code> loop with implicit termination condition #loc
1645 loop.with.implicit.termination.condition.problem.descriptor=<code>#ref</code> loop with implicit termination condition #loc
1646 loop.with.implicit.termination.condition.quickfix=Make condition explicit
1647 ignore.iterator.loop.variables=Ignore java.util.Iterator loop variables
1648 rename.catch.parameter.to.ignored=Rename 'catch' parameter to 'ignored'
1649 unnecessary.super.qualifier.display.name=Unnecessary 'super' qualifier
1650 unnecessary.super.qualifier.problem.descriptor=Qualifier <code>#ref</code> is unnecessary in this context #loc
1651 unnecessary.super.qualifier.quickfix=Remove unnecessary 'super' qualifier
1652 collections.field.access.replaceable.by.method.call.display.name=Collections.EMPTY_* field access replaceable with 'Collections.empty*()' method call
1653 collections.field.access.replaceable.by.method.call.problem.descriptor=<code>#ref</code> replaceable with ''Collections.{0}'' #loc
1654 collections.field.access.replaceable.by.method.call.quickfix=Replace with ''{0}''
1655 synchronization.on.local.variable.or.method.parameter.display.name=Synchronization on local variable or method parameter
1656 synchronization.on.local.variable.problem.descriptor=Synchronization on local variable <code>#ref</code> #loc
1657 synchronization.on.method.parameter.problem.descriptor=Synchronization on method parameter <code>#ref</code> #loc
1658 too.broad.catch.quickfix=Add ''catch'' clause for ''{0}''
1659 replace.with.catch.clause.for.runtime.exception.quickfix=Replace with 'catch' clause for 'RuntimeException'
1660 too.broad.catch.option=&Only warn on RuntimeException, Exception, Error or Throwable
1661 unnecessary.call.to.string.valueof.display.name=Unnecessary call to 'String.valueOf()'
1662 unnecessary.tostring.call.display.name=Unnecessary call to 'toString()'
1663 unnecessary.call.to.string.valueof.problem.descriptor=<code>#ref</code> can be simplified to ''{0}'' #loc
1664 unnecessary.tostring.call.problem.descriptor=Unnecessary <code>#ref()</code> call #loc
1665 unnecessary.call.to.string.valueof.quickfix=Replace with ''{0}''
1666 throwable.result.of.method.call.ignored.display.name=Throwable result of method call ignored
1667 throwable.result.of.method.call.ignored.problem.descriptor=Result of <code>#ref()</code> not thrown #loc
1668 char.used.in.arithmetic.context.display.name=Char expression used in arithmetic context
1669 char.used.in.arithmetic.context.problem.descriptor='char' <code>#ref</code> used in arithmetic context #loc
1670 char.used.in.arithmetic.context.quickfix=Convert to String literal
1671 char.used.in.arithmetic.context.cast.quickfix=Insert cast to {0}
1672 unnecessary.constant.array.creation.expression.display.name=Constant array creation expression can be replaced with array initializer
1673 unnecessary.constant.array.creation.expression.problem.descriptor=<code>#ref</code> can be replaced with array initializer expression #loc
1674 unnecessary.constant.array.creation.expression.quickfix=Replace with array initializer expression
1675 ambiguous.method.call.display.name=Call to inherited method looks like call to local method
1676 ambiguous.method.call.problem.descriptor=Call to method <code>#ref()</code> from superclass ''{0}'' looks like call to method from class ''{1}'' #loc
1677 ambiguous.method.call.quickfix=Add 'super' qualifier to method call
1678 change.modifier.quickfix=Make ''{0}''
1679 the.whole.project=the whole project
1680 this.class=this class
1681 assertequals.may.be.assertsame.display.name='assertEquals()' may be 'assertSame()'
1682 assertequals.may.be.assertsame.problem.descriptor=<code>#ref()</code> may be 'assertSame()' #loc
1683 logger.initialized.with.foreign.class.quickfix=Replace with ''{0}.class''
1684 logger.initialized.with.foreign.class.problem.descriptor=Logger initialized with foreign class <code>#ref</code> #loc
1685 logger.initialized.with.foreign.class.display.name=Logger initialized with foreign class
1686 logger.factory.method.name=Logger factory method name
1687 logger.factory.class.name=Logger factory class name
1688 make.static.final.quickfix=Make ''{0}'' static final
1689 logging.condition.disagrees.with.log.statement.display.name=Log condition does not match logging call
1690 logging.condition.disagrees.with.log.statement.problem.descriptor=Log condition <code>#ref()</code> does not match ''{0}()'' logging call #loc
1691 log.statement.guarded.by.log.condition.display.name=Logging call not guarded by log condition
1692 log.statement.guarded.by.log.condition.problem.descriptor=<code>#ref()</code> logging calls not guarded by log condition #loc
1693 log.statement.guarded.by.log.condition.quickfix=Surround with log condition
1694 log.statement.guarded.by.log.condition.flag.all.unguarded.option=Flag all unguarded logging calls
1695 key.set.iteration.may.use.entry.set.display.name=Iteration over 'keySet()' may be replaced with 'entrySet()' iteration
1696 key.set.iteration.may.use.entry.set.problem.descriptor=Iteration over <code>#ref</code> may be replaced with 'entrySet()' iteration #loc
1697 key.set.iteration.may.use.entry.set.quickfix=Replace with 'entrySet()' iteration
1698 string.replaceable.by.string.buffer.in.loop.option=Only warn when appending in a loop
1699 declare.collection.as.interface.quickfix=Weaken to ''{0}''
1700 non.exception.name.ends.with.exception.quickfix=Make ''{0}'' extend ''java.lang.Exception''
1701 constant.value.variable.use.display.name=Use of variable whose value is known to be constant
1702 constant.value.variable.use.problem.descriptor=Value of <code>#ref</code> is known to be constant #loc
1703 replace.reference.with.expression.quickfix=Replace with ''{0}''
1704 unnecessary.parentheses.option=Ignore clarifying parentheses
1705 unnecessary.parentheses.conditional.option=Ignore parentheses around the condition of conditional expressions
1706 field.may.be.final.display.name=Field may be 'final'
1707 field.may.be.final.problem.descriptor=Field <code>#ref</code> may be 'final' #loc
1708 cast.that.loses.precision.option=Ignore casts from int to char
1709 variable.not.used.inside.if.display.name=Reference checked for 'null' is not used inside 'if'
1710 variable.not.used.inside.if.problem.descriptor=<code>#ref</code> checked for 'null' is not used inside 'if' #loc
1711 variable.not.used.inside.conditional.problem.descriptor=<code>#ref</code> checked for 'null' is not used inside conditional #loc
1712 boolean.expression.may.be.conditional.display.name=Boolean expression could be replaced with conditional expression
1713 if.may.be.conditional.display.name='if' statement could be replaced with conditional expression
1714 if.may.be.conditional.problem.descriptor=<code>#ref</code> could be replaced with conditional expression #loc
1715 if.may.be.conditional.quickfix=Replace with conditional expression
1716 if.may.be.conditional.report.method.calls.option=Report if statements containing method calls
1717 redundant.string.format.call.display.name=Redundant call to 'String.format()'
1718 redundant.string.format.call.problem.descriptor=Redundant call to <code>#ref</code> #loc
1719 redundant.string.format.call.quickfix=Remove redundant call to 'String.format()'
1720 junit4.test.method.in.class.extending.junit3.testcase.display.name=JUnit 4 test method in class extending JUnit 3 TestCase
1721 junit4.test.method.in.class.extending.junit3.testcase.problem.descriptor=Method <code>#ref()</code> annotated with '@Test' inside class extending JUnit 3 TestCase #loc
1722 ignore.test.method.in.class.extending.junit3.testcase.problem.descriptor=JUnit 3 test method <code>#ref()</code> annotated with '@Ignore' won't be ignored #loc
1723 ignore.test.method.in.class.extending.junit3.testcase.quickfix=Remove ''@Ignore'' and rename method to ''{0}''
1724 convert.junit3.test.class.quickfix=Convert JUnit 3 class ''{0}'' to JUnit 4
1725 remove.junit4.test.annotation.quickfix=Remove '@Test' annotation
1726 remove.junit4.test.annotation.and.rename.quickfix=Remove ''@Test'' annotation and rename to ''{0}''
1727 equals.called.on.enum.constant.display.name='equals()' called on Enum value
1728 equals.called.on.enum.constant.problem.descriptor=<code>#ref()</code> called on Enum value #loc
1729 equals.called.on.enum.constant.quickfix=Replace 'equals()' with '=='
1730 int.literal.may.be.long.literal.display.name='int' literal cast to 'long' could be 'long' literal
1731 int.literal.may.be.long.literal.problem.descriptor=<code>#ref</code> could be replaced with ''{0}'' #loc
1732 int.literal.may.be.long.literal.quickfix=Replace with ''{0}''
1733 constant.assert.condition.display.name='assert' statement condition is constant
1734 constant.assert.condition.problem.descriptor=Assert condition <code>#ref</code> is constant #loc
1735 assert.with.side.effects.display.name='assert' statement with side effects
1736 assert.with.side.effects.problem.descriptor=<code>#ref</code> has side effects #loc
1737 method.count.ignore.getters.setters.option=&Ignore simple getter and setter methods
1738 class.new.instance.display.name=Unsafe call to 'Class.newInstance()'
1739 class.new.instance.problem.descriptor=Call to <code>#ref()</code> may throw undeclared checked exceptions #loc
1740 class.new.instance.quickfix=Replace with 'Class.getConstructor().newInstance()' call
1741 dynamic.regex.replaceable.by.compiled.pattern.display.name=Dynamic regular expression could be replaced by compiled Pattern
1742 dynamic.regex.replaceable.by.compiled.pattern.problem.descriptor=<code>#ref()</code> could be replaced with compiled java.util.regex.Pattern construct #loc
1743 dynamic.regex.replaceable.by.compiled.pattern.quickfix=Replace with call to method of compiled 'Pattern' constant
1744 ignore.serializable.option=Ignore 'java.io.Serializable'
1745 ignore.cloneable.option=Ignore 'java.lang.Cloneable'
1746 listener.may.use.adapter.display.name=Class may extend adapter instead of implementing listener
1747 listener.may.use.adapter.problem.descriptor=Class ''{0}'' may extend ''{1}'' instead of implementing <code>#ref</code> #loc
1748 listener.may.use.adapter.quickfix=Replace with ''extends {0}''
1749 listener.may.use.adapter.emtpy.methods.option=&Only warn when empty implementing methods are found
1750 unnecessary.inherit.doc.display.name=Unnecessary {@inheritDoc} Javadoc Comment
1751 unnecessary.inherit.doc.problem.descriptor=Javadoc comment containing only <code>#ref</code> is unnecessary #loc
1752 unnecessary.inherit.doc.field.invalid.problem.descriptor=<code>#ref</code> is not valid on fields #loc
1753 unnecessary.inherit.doc.constructor.invalid.problem.descriptor=<code>#ref</code> is not valid on constructors #loc
1754 unnecessary.inherit.doc.class.invalid.problem.descriptor=<code>#ref</code> is not valid on classes #loc
1755 unnecessary.inherit.doc.constructor.no.super.problem.descriptor=No super method found to inherit Javadoc from #loc
1756 unnecessary.inherit.doc.quickfix=Remove unnecessary {@inheritDoc}
1757 multiple.exceptions.declared.on.test.method.display.name=Multiple exceptions declared on test method
1758 multiple.exceptions.declared.on.test.method.problem.descriptor=<code>#ref</code> could be replaced with 'throws Exception' #loc
1759 multiple.exceptions.declared.on.test.method.quickfix=Replace with 'throws Exception'
1760 unnecessary.javadoc.link.display.name=Unnecessary Javadoc link
1761 unnecessary.javadoc.link.super.method.problem.descriptor=<code>#ref</code> pointing to super method is unnecessary #loc
1762 unnecessary.javadoc.link.this.method.problem.descriptor=<code>#ref</code> pointing to this method is unnecessary #loc
1763 unnecessary.javadoc.link.this.class.problem.descriptor=<code>#ref</code> pointing to containing class is unnecessary #loc
1764 unnecessary.javadoc.link.quickfix=Remove unnecessary ''{0}''
1765 thread.local.not.static.final.display.name=ThreadLocal field not declared static final
1766 thread.local.not.static.final.problem.descriptor=ThreadLocal <code>#ref</code> is not declared 'static final' #loc
1767 remove.try.finally.block.quickfix=Remove 'try-finally' block
1768 remove.finally.block.quickfix=Remove 'finally' block
1769 remove.leading.zero.to.make.decimal.quickfix=Remove leading zero to make decimal
1770 convert.octal.literal.to.decimal.literal.quickfix=Convert octal literal to decimal literal
1771 ignore.single.field.static.imports.option=Ignore single &field static imports
1772 ignore.single.method.static.imports.option=Ignore single &method static imports
1773 ignore.methods.with.boolean.return.type.option=Ignore methods with java.lang.&Boolean return type
1774 ignore.boolean.methods.in.an.interface.option=Ignore boolean methods in an @&interface
1775 ignore.methods.overriding.super.method=Ignore methods &overriding/implementing a super method
1776 ignore.nullable.parameters.option=Ignore @Nullable parameters
1777 ignored.io.resource.types=Ignored I/O resource types
1778 choose.io.resource.type.to.ignore=Choose I/O resource type to ignore
1779 ignore.accesses.from.the.same.class=Ignore accesses from the same class
1780 ignore.accesses.from.equals.method=Ignore accesses from 'equals()' method
1781 ignore.branches.of.switch.statements=Ignore branches of 'switch' statements
1782 ignore.equals.hashcode.and.tostring=Ignore 'equals()', 'hashCode()' and 'toString()' methods
1783 ignore.methods.in.anonymous.classes=Ignore methods in anonymous classes
1784 class.name=Class name
1785 method.name.regex=Method name regex
1786 choose.class=Choose class
1787 query.column.name=Query names start with
1788 update.column.name=Update names start with
1789 assert.keyword.is.considered.an.assertion='assert' keyword is considered an assertion
1790 expected.exception.never.thrown.display.name=Expected exception never thrown in test method body
1791 expected.exception.never.thrown.problem.descriptor=Expected <code>#ref</code> never thrown in body of ''{0}()'' #loc
1792 choose.logger.class=Choose logger class
1793 logger.class.name=Logger class name
1794 ignore.exceptions.declared.on.library.override.option=Ignore exceptions declared on methods overriding a &library method
1795 allow.resource.to.be.opened.inside.a.try.block=Allow resource to be opened inside a 'try' block
1796 any.method.may.close.resource.argument=Any method may close resource argument
1797 log.method.name=Logging method name
1798 log.condition.text=Log condition text
1799 ignore.if.annotated.by=Ignore if annotated by
1800 ignore.parameter.if.annotated.by=Ignore parameter if it is annotated by
1801 only.weaken.to.an.interface=Only weaken to an interface
1802 unqualified.inner.class.access.display.name=Unqualified inner class access
1803 unqualified.inner.class.access.problem.descriptor=<code>#ref</code> is not qualified with outer class #loc
1804 unqualified.inner.class.access.quickfix=Qualify with outer class
1805 unnecessarily.qualified.inner.class.access.problem.descriptor=''{0}'' is unnecessarily qualified with <code>#ref</code> #loc
1806 unnecessarily.qualified.inner.class.access.display.name=Unnecessarily qualified inner class access
1807 unnecessarily.qualified.inner.class.access.quickfix=Remove qualifier
1808 synchronization.on.static.field.display.name=Synchronization on 'static' field
1809 synchronization.on.static.field.problem.descriptor=Synchronization on 'static' field <code>#ref</code> #loc
1810 assertequals.called.on.arrays.display.name='assertEquals()' called on array
1811 assertequals.called.on.arrays.problem.descriptor=<code>#ref()</code> called on array #loc
1812 assertequals.called.on.arrays.quickfix=Replace with 'assertArrayEquals()'
1813 overly.broad.throws.clause.display.name=Overly broad 'throws' clause
1814 overly.broad.throws.clause.problem.descriptor1=<code>throws #ref</code> is too broad, masking exception ''{0}'' #loc
1815 overly.broad.throws.clause.problem.descriptor2=<code>throws #ref</code> is too broad, masking exceptions ''{0}'' and ''{1}'' #loc
1816 overly.broad.throws.clause.quickfix1=Add specific exceptions
1817 overly.broad.throws.clause.quickfix2=Replace with specific exceptions
1818 overly.broad.throws.clause.ignore.thrown.option=Ignore exceptions which &hide others but are themselves thrown
1819 unnecessarily.qualified.statically.imported.element.display.name=Unnecessarily qualified statically imported element
1820 unnecessarily.qualified.statically.imported.element.problem.descriptor=Statically imported element ''{0}'' is unnecessarily qualified with <code>#ref</code> #loc
1821 unnecessarily.qualified.statically.imported.element.quickfix=Remove unnecessary qualifier
1822 ignore.instanceof.on.library.classes=Ignore instanceof on library classes
1823 assertequals.may.be.assertsame.quickfix=Replace with 'assertSame()'
1824 for.can.be.foreach.option=Report indexed 'java.util.List' loops
1825 for.can.be.foreach.option2=Do not report iterations over untyped collections
1826 cast.conflicts.with.instanceof.quickfix1=Replace ''{0}'' with ''{1}'' in cast
1827 cast.conflicts.with.instanceof.quickfix2=Replace ''{0}'' with ''{1}'' in instanceof
1828 double.checked.locking.quickfix=Make ''{0}'' ''volatile''
1829 double.literal.may.be.float.literal.display.name='double' literal cast to 'float' could be 'float' literal
1830 double.literal.may.be.float.literal.problem.descriptor=<code>#ref</code> could be replaced with ''{0}'' #loc
1831 double.literal.may.be.float.literal.quickfix=Replace with ''{0}''
1832 multiple.declaration.option=Ignore 'for' loop declarations
1833 simplifiable.annotation.display.name=Simplifiable annotation
1834 simplifiable.annotation.problem.descriptor=Unnecessary <code>#ref</code> in annotation #loc
1835 simplifiable.annotation.whitespace.problem.descriptor=Unnecessary whitespace in annotation #loc
1836 simplifiable.annotation.quickfix=Simplify annotation
1837 overloaded.methods.with.same.number.parameters.option=<html>Ignore overloaded methods whose parameter types are definitely incompatible</html>
1838 string.concatenation.in.format.call.display.name=String concatenation as argument to 'format()' call
1839 string.concatenation.in.format.call.problem.descriptor=<code>#ref()</code> call has a String concatenation argument #loc
1840 string.concatenation.in.format.call.quickfix=Replace concatenation with separate argument
1841 string.concatenation.in.message.format.call.display.name=String concatenation as argument to 'MessageFormat.format()' call
1842 string.concatenation.in.message.format.call.problem.descriptor=String concatenation as argument to 'MessageFormat.format()' call #loc
1843 shift.out.of.range.quickfix=Replace ''{0}'' with ''{1}''
1844 boxing.boxed.value.display.name=Boxing of already boxed value
1845 boxing.boxed.value.problem.descriptor=Boxing of already boxed <code>#ref</code> #loc
1846 boxing.boxed.value.quickfix=Remove unnecessary boxing
1847 unnecessary.javadoc.link.option=Ignore inline links to super methods
1848 constant.junit.assert.argument.display.name=Constant JUnit assert argument
1849 constant.junit.assert.argument.problem.descriptor=Argument <code>#ref</code> is constant #loc
1850 test.case.with.no.test.methods.option=Ignore test cases which have superclasses with test methods
1851 package.dot.html.may.be.package.info.display.name='package.html' may be converted to 'package-info.java'
1852 package.dot.html.may.be.package.info.exists.problem.descriptor=<code>package.html</code> is ignored because <code>package-info.java</code> exists
1853 package.dot.html.may.be.package.info.problem.descriptor=<code>package.html</code> may be converted to <code>package-info.java</code>
1854 package.dot.html.may.be.package.info.delete.quickfix=Delete 'package.html'
1855 package.dot.html.delete.command=package.html deletion
1856 package.dot.html.may.be.package.info.convert.quickfix=Convert to 'package-info.java'
1857 package.dot.html.convert.command=package.html to package-info.java conversion
1858 choose.super.class.to.ignore=Choose class
1859 ignore.anonymous.inner.classes=Ignore anonymous inner classes
1860 try.with.identical.catches.display.name=Identical 'catch' branches in 'try' statement
1861 try.with.identical.catches.problem.descriptor=''catch'' branch identical to ''{0}'' branch #loc
1862 if.can.be.switch.display.name='if' replaceable with 'switch'
1863 if.can.be.switch.problem.descriptor=<code>#ref</code> statement replaceable with 'switch' statement #loc
1864 if.can.be.switch.quickfix=Replace with 'switch'
1865 if.can.be.switch.minimum.branch.option=Minimum number of branches:
1866 if.can.be.switch.int.option=Suggest switch on numbers
1867 if.can.be.switch.enum.option=Suggest switch on enums
1868 if.can.be.switch.null.safe.option=Only suggest on null-safe expressions
1869 unnecessarily.qualified.inner.class.access.option=Ignore references for which an import is needed
1870 unqualified.inner.class.access.option=Ignore references to local inner classes
1871 try.with.identical.catches.quickfix=Collapse 'catch' blocks
1872 confusing.else.option=<html>Also report when there are no more statements after the 'if' statement</html>
1873 html.tag.can.be.javadoc.tag.display.name=<code>...</code> can be replaced with {@code ...}
1874 html.tag.can.be.javadoc.tag.problem.descriptor=<code>#ref...\\&lt;/code\\&gt;</code> can be replaced with '{@code ...}' #loc
1875 html.tag.can.be.javadoc.tag.quickfix=Replace with '{@code ...}'
1876 try.finally.can.be.try.with.resources.display.name='try finally' replaceable with 'try' with resources
1877 try.finally.can.be.try.with.resources.problem.descriptor=<code>#ref</code> can use automatic resource management #loc
1878 try.finally.can.be.try.with.resources.quickfix=Replace with 'try' with resources
1879 array.comparison.display.name=Array comparison using '==', instead of 'Arrays.equals()'
1880 array.comparison.problem.descriptor=Array objects are compared using <code>#ref</code>, not 'Arrays.equals()' #loc
1881 array.hash.code.display.name='hashCode()' called on array
1882 array.hash.code.problem.descriptor=<code>#ref()</code> called on array should probably be 'Arrays.hashCode()' #loc
1883 arrays.deep.hash.code.quickfix=Replace with 'Arrays.deepHashCode()'
1884 arrays.hash.code.quickfix=Replace with 'Arrays.hashCode()'
1885 method.can.be.variable.arity.method.display.name=Method can be varargs method
1886 method.can.be.variable.arity.method.problem.descriptor=<code>#ref()</code> can be converted to varargs method #loc
1887 method.can.be.variable.arity.method.ignore.byte.short.option=Ignore methods with a last parameter of type byte[] or short[]
1888 method.can.be.variable.arity.method.ignore.multiple.arrays.option=Ignore methods with multiple array parameters
1889 convert.to.variable.arity.method.quickfix=Convert to varargs method
1890 mismatched.string.builder.query.update.display.name=Mismatched query and update of StringBuilder
1891 mismatched.string.builder.updated.problem.descriptor=Contents of {0} <code>#ref</code> are updated, but never queried #loc
1892 mismatched.string.builder.queried.problem.descriptor=Contents of {0} <code>#ref</code> are queried, but never updated #loc
1893 math.random.cast.to.int.display.name='Math.random()' cast to 'int'
1894 math.random.cast.to.int.problem.descriptor=<code>#ref</code> cast to 'int' is always rounded down to '0' #loc
1895 math.random.cast.to.int.quickfix=Add parentheses to perform multiplication before cast
1896 boolean.variable.always.inverted.display.name=Boolean variable is always inverted
1897 boolean.field.always.inverted.problem.descriptor=Boolean field <code>#ref</code> is always inverted #loc
1898 boolean.variable.always.inverted.problem.descriptor=Boolean variable <code>#ref</code> is always inverted #loc
1899 unnecessary.explicit.numeric.cast.display.name=Unnecessary explicit numeric cast
1900 unnecessary.explicit.numeric.cast.problem.descriptor=''{0}'' unnecessarily cast to <code>#ref</code> #loc
1901 unnecessary.explicit.numeric.cast.quickfix=Remove cast
1902 null.thrown.display.name='null' thrown
1903 null.thrown.problem.descriptor=<code>#ref</code> thrown #loc
1904 null.thrown.quickfix=Replace with 'new NullPointerException()'
1905 element.only.used.from.test.code.display.name=Symbol only used from test code
1906 class.only.used.from.test.code.problem.descriptor=class <code>#ref</code> only used from test code #loc
1907 method.only.used.from.test.code.problem.descriptor=method <code>#ref()</code> only called from test code #loc
1908 field.only.used.from.test.code.problem.descriptor=field <code>#ref</code> only accessed from test code #loc
1909 unnecessary.final.on.local.variable.or.parameter.display.name=Unnecessary 'final' on local variable or parameter
1910 unnecessary.final.on.local.variable.problem.descriptor=Unnecessary <code>#ref</code> on variable ''{0}'' #loc
1911 unnecessary.final.on.parameter.problem.descriptor=Unnecessary <code>#ref</code> on parameter ''{0}'' #loc
1912 unnecessary.final.report.local.variables.option=Report local variables
1913 unnecessary.final.report.parameters.option=Report parameters
1914 unnecessary.final.on.parameter.only.interface.option=Only warn on abstract or interface methods
1915 choose.exception.class=Choose Exception class
1916 class.independent.of.module.display.name=Class independent of its module
1917 class.independent.of.module.problem.descriptor=Class <code>#ref</code> has no dependencies or dependents in its module #loc
1918 class.only.used.in.one.module.display.name=Class only used from one other module
1919 class.only.used.in.one.module.problem.descriptor=Class <code>#ref</code> has only dependencies on and/or dependents in module ''{0}'' #loc
1920 empty.directory.display.name=Empty directory
1921 empty.directories.problem.descriptor=Empty directory <code>{0}</code>
1922 empty.directories.only.under.source.roots.option=Only report empty directories located under a source folder
1923 empty.directories.delete.quickfix=Delete empty directory ''{0}''
1924 simplifiable.equals.expression.display.name=Unnecessary 'null' check before 'equals()' call
1925 simplifiable.equals.expression.problem.descriptor=Unnecessary ''null'' check before ''{0}()'' call #loc
1926 simplifiable.equals.expression.quickfix=Flip ''.{0}()'' and remove unnecessary ''null'' check
1927 cast.to.concrete.class.option=Ignore casts to an abstract class type
1928 cast.to.concrete.class.ignore.equals.option=Ignore in equals()
1929 instanceof.interfaces.option=Ignore instanceof abstract class
1930 instance.variable.of.concrete.class.option=Ignore instance fields whose type is an abstract class
1931 local.variable.of.concrete.class.option=Ignore local variables whose type is an abstract class
1932 method.return.of.concrete.class.option=Ignore methods whose return type is an abstract class
1933 parameter.of.concrete.class.option=Ignore parameters whose type is abstract class
1934 static.variable.of.concrete.class.option=Ignore static fields whose type is an abstract class
1935 class.only.used.in.one.package.display.name=Class only used from one other package
1936 class.only.used.in.one.package.problem.descriptor=Class <code>#ref</code> has only dependencies on and/or dependents in package ''{0}'' #loc
1937 unnecessary.return.option=Ignore in then branch of 'if' statement with 'else' branch
1938 usage.of.obsolete.assert.display.name=Usage of obsolete 'junit.framework.Assert'
1939 use.of.obsolete.assert.problem.descriptor=Call to <code>#ref()</code> from 'junit.framework.Assert' should be replaced with call to method from 'org.junit.Assert' #loc
1940 use.of.obsolete.assert.quickfix=Replace with 'org.junit.Assert' method call
1941 properties.object.as.hashtable.set.quickfix=Replace with call to 'setProperty()'
1942 properties.object.as.hashtable.get.quickfix=Replace with call to 'getProperty()'
1943 ignored.junit.test.display.name=JUnit test annotated with '@Ignore'
1944 ignored.junit.test.classproblem.descriptor=Test class ''{0}'' annotated with <code>#ref</code> #loc
1945 ignored.junit.test.method.problem.descriptor=Test method ''{0}()'' annotated with <code>#ref</code> #loc
1946 unclear.binary.expression.display.name=Unclear expression
1947 unclear.binary.expression.problem.descriptor=Expression could use clarifying parentheses #loc
1948 unclear.binary.expression.quickfix=Add clarifying parentheses
1949 new.exception.without.arguments.display.name=Exception constructor called without arguments
1950 new.exception.without.arguments.problem.descriptor=<code>new #ref()</code> without arguments #loc
1951 new.exception.without.arguments.ignore.option=Ignore for exceptions that have no constructors with parameters
1952 absolute.alignment.in.user.interface.display.name=Absolute alignment used in AWT/Swing code
1953 absolute.alignment.in.user.interface.problem.descriptor=Absolute alignment constant <code>{0}.#ref</code> used #loc
1954 absolute.alignment.in.user.interface.quickfix=Replace with ''{0}.{1}''
1955 throws.runtime.exception.display.name=Unchecked exception declared in 'throws' clause
1956 throws.runtime.exception.problem.descriptor=Unchecked exception <code>#ref</code> declared in 'throws' clause #loc
1957 throws.runtime.exception.quickfix=Remove ''{0}'' from ''throws'' clause
1958 throws.runtime.exception.move.quickfix=Move ''{0}'' to Javadoc ''@throws'' tag
1959 empty.class.ignore.parameterization.option=Ignore class if it is a parameterization of a super type
1960 ambiguous.field.access.display.name=Access of inherited field looks like access of element in surrounding code
1961 ambiguous.field.access.hides.local.variable.problem.descriptor=Access of field <code>#ref</code> from superclass ''{0}'' looks like access of local variable #loc
1962 ambiguous.field.access.hides.parameter.problem.descriptor=Access of field <code>#ref</code> from superclass ''{0}'' looks like access of parameter #loc
1963 ambiguous.field.access.hides.field.problem.descriptor=Access of field <code>#ref</code> from superclass ''{0}'' looks like access of field from surrounding class #loc
1964 ambiguous.field.access.quickfix=Add 'super' qualifier to field access
1965 string.builder.replaceable.by.string.quickfix=Replace 'StringBuilder' with 'String'
1966 string.buffer.replaceable.by.string.quickfix=Replace 'StringBuffer' with 'String'
1967 add.0.to.ignore.if.annotated.by.list.quickfix=Add ''{0}'' to ''Ignore if annotated by'' list
1968 non.final.field.in.enum.display.name=Non-'final' field in enum
1969 non.final.field.in.enum.problem.descriptor=non-''final'' field <code>#ref</code> in enum ''{0}'' #loc
1970 externalizable.without.public.no.arg.constructor.display.name=Externalizable class without public no-arg constructor
1971 externalizable.without.public.no.arg.constructor.problem.descriptor=Externalizable class <code>#ref</code> has no public no-arg constructor #loc
1972 make.constructor.public=Make constructor 'public'
1973 string.concatenation.missing.whitespace.display.name=String literal concatenation missing whitespace
1974 string.concatenation.missing.whitespace.problem.descriptor=String literal concatenation missing whitespace #loc
1975 string.concatenation.missing.whitespace.option=Ignore when one or both sides are not literals
1976 negated.equality.expression.display.name=Negated equality expression
1977 negated.equality.expression.problem.descriptor=Negating ''{0}'' #loc
1978 negated.equality.expression.quickfix=Remove negation
1979 negated.conditional.expression.display.name=Negated conditional expression
1980 negated.conditional.expression.problem.descriptor=Negating conditional expression #loc
1981 negated.conditional.expression.quickfix=Remove negation
1982 suspicious.array.cast.display.name=Suspicious array cast
1983 suspicious.array.cast.problem.descriptor=Suspicious cast to <code>#ref</code> #loc
1984 public.constructor.display.name='public' constructor
1985 public.default.constructor.problem.descriptor=Class <code>#ref</code> has public default constructor
1986 public.constructor.problem.descriptor=Public constructor <code>#ref()</code> #loc
1987 public.constructor.quickfix=Replace constructor with factory method
1988 junit3.style.test.method.in.junit4.class.display.name=Old style JUnit test method in JUnit 4 class
1989 junit3.style.test.method.in.junit4.class.problem.descriptor=Old style JUnit test method <code>#ref()</code> in JUnit 4 class #loc
1990 none=none
1991 private=private
1992 package.local.private=package-private \\& private
1993 protected.package.local.private=protected, package-private \\& private
1994 non.final.utility.class.display.name=Utility class is not final
1995 non.final.utility.class.problem.descriptor=Utility class <code>#ref</code> is not 'final' #loc
1996 0.will.no.longer.be.overridable.by.1={0} will no longer be overridable by {1}
1997 0.will.have.incompatible.access.privileges.with.super.1={0} will have incompatible access privileges with super {1}
1998 0.will.no.longer.be.visible.from.overriding.1={0} will no longer be visible from overriding {1}
1999 make.private.quickfix=Make 'private'
2000 arrays.as.list.with.zero.or.one.argument.display.name=Call to 'Arrays.asList()' with too few arguments
2001 arrays.as.list.with.one.argument.problem.descriptor=Call to <code>#ref</code> with only one argument #loc
2002 arrays.as.list.with.zero.arguments.problem.descriptor=Call to <code>#ref</code> with zero arguments #loc
2003 arrays.as.list.with.one.argument.quickfix=Replace with call to 'Collections.singletonList()'
2004 arrays.as.list.with.zero.arguments.quickfix=Replace with call to 'Collections.emptyList()'
2005 ignore.classes.extending.throwable.option=Ignore classes extending 'Throwable'
2006 string.concatenation.argument.to.log.call.display.name=Non-constant string concatenation as argument to logging call
2007 string.concatenation.argument.to.log.call.problem.descriptor=Non-constant string concatenation as argument to <code>#ref()</code> logging call #loc
2008 string.concatenation.argument.to.log.call.quickfix=Replace concatenation with parameterized log message
2009 placeholder.count.matches.argument.count.display.name=Number of placeholders does not match number of arguments in logging call
2010 placeholder.count.matches.argument.count.more.problem.descriptor=More arguments provided ({0}) than placeholders specified ({1}) #loc
2011 placeholder.count.matches.argument.count.fewer.problem.descriptor=Fewer arguments provided ({0}) than placeholders specified ({1}) #loc
2012 assignment.to.superclass.field.display.name=Constructor assigns value to field defined in superclass
2013 assignment.to.superclass.field.problem.descriptor=Assignment to field ''{0}'' defined in superclass ''{1}'' #loc
2014 junit.rule.display.name=Malformed @Rule/@ClassRule field
2015 junit.rule.problem.descriptor=Fields annotated with @{0} should be {1}
2016 junit.rule.type.problem.descriptor=Field type should be subtype of org.junit.rules.TestRule
2017 junit.datapoint.display.name=Malformed @DataPoint field
2018 junit.datapoint.problem.descriptor={1}s annotated with @DataPoint should be {0}
2019 inner.class.referenced.via.subclass.display.name=Inner class referenced via subclass
2020 inner.class.referenced.via.subclass.problem.descriptor=Inner class <code>#ref</code> declared in class ''{0}'' but referenced via subclass ''{1}'' #loc
2021 inner.class.referenced.via.subclass.quickfix=Rationalize inner class access
2022 boolean.parameter.display.name='public' method with 'boolean' parameter
2023 boolean.parameter.problem.descriptor='public' method <code>#ref()</code> with 'boolean' parameter #loc
2024 boolean.parameters.problem.descriptor='public' method <code>#ref()</code> with 'boolean' parameters #loc
2025 boolean.parameter.constructor.problem.descriptor='public' constructor <code>#ref()</code> with 'boolean' parameter #loc
2026 boolean.parameters.constructor.problem.descriptor='public' constructor <code>#ref()</code> with 'boolean' parameters #loc
2027 boolean.parameter.only.report.multiple.option=Only report methods with multiple boolean parameters
2028 unnecessary.unicode.escape.display.name=Unnecessary unicode escape sequence
2029 unnecessary.unicode.escape.problem.descriptor=Unicode escape sequence <code>#ref</code> can be replaced with ''{0}'' #loc
2030 missing.package.info.display.name=Missing 'package-info.java'
2031 missing.package.info.problem.descriptor=Package ''{0}'' is missing a <code>package-info.java</code> file
2032 missing.package.html.problem.descriptor=Package ''{0}'' is missing a <code>package.html</code> file
2033 package.info.java.without.package.display.name='package-info.java' without 'package' statement
2034 package.info.without.package.problem.descriptor='package-info.java' does not have a package statement
2035 package.info.without.package.quickfix=add ''package {0};''
2036 package.info.without.package.family.quickfix=add package statement
2037 auto.closeable.resource.display.name=AutoCloseable used without 'try'-with-resources
2038 auto.closeable.resource.problem.descriptor=''{0}'' used without ''try''-with-resources statement #loc
2039 auto.closeable.resource.quickfix=Ignore 'AutoCloseable' returned by this method
2040 auto.closeable.resource.returned.option=Ignore AutoCloseable instances returned from all method calls
2041 problematic.varargs.method.display.name=Non-varargs method overrides varargs method
2042 problematic.varargs.method.override.problem.descriptor=Non-varargs method <code>#ref()</code> overrides varargs method #loc
2043 negatively.named.boolean.variable.problem.descriptor=Boolean variable <code>#ref</code> is negatively named #loc
2044 negatively.named.boolean.variable.display.name=Negatively named boolean variable
2045 invert.quickfix.family.name=Invert boolean
2046 invert.method.quickfix=Invert method
2047 invert.quickfix=Invert ''{0}''
2048 throwable.printed.to.system.out.display.name='Throwable' printed to 'System.out'
2049 throwable.printed.to.system.out.problem.descriptor='Throwable' argument <code>#ref</code> to ''System.{0}.{1}()'' call
2050 suppress.for.tests.scope.quickfix=Suppress for 'Tests' scope
2051 implicit.default.charset.usage.display.name=Implicit usage of platform's default charset
2052 implicit.default.charset.usage.problem.descriptor=Call to <code>#ref()</code> uses the platform's default charset
2053 implicit.default.charset.usage.constructor.problem.descriptor=<code>new #ref()</code> call uses the platform's default charset
2054 interface.may.be.annotated.functional.display.name=Interface may be annotated @FunctionalInterface
2055 interface.may.be.annotated.functional.problem.descriptor=Interface <code>#ref</code> may be annotated with @FunctionalInterface
2056 only.report.public.methods.option=Only report 'public' methods
2057 lambda.parameter.hides.member.variable.display.name=Lambda parameter hides field
2058 static.initializer.references.subclass.display.name=Static initializer references subclass
2059 lambda.parameter.hides.member.variable.problem.descriptor=Lambda parameter <code>#ref</code> hides field in class ''{0}'' #loc
2060 shared.thread.local.random.display.name='ThreadLocalRandom' instance might be shared
2061 shared.thread.local.random.problem.descriptor='ThreadLocalRandom' instance might be shared between threads
2062 native.method.naming.convention.display.name='native' method naming convention
2063 native.method.naming.convention.element.description='native' method
2064 use.of.obsolete.date.time.api.display.name=Use of obsolete date-time API
2065 use.of.obsolete.date.time.api.problem.descriptor=Obsolete date-time type <code>#ref</code> used #loc
2066 warn.on.label=Warn on:
2067 all.levels.option=all log levels
2068 warn.level.and.lower.option=warn level and lower
2069 info.level.and.lower.option=info level and lower
2070 debug.level.and.lower.option=debug level and lower
2071 trace.level.option=trace level
2072 ignored.autocloseable.types.column.label=Ignored AutoCloseable resource types
2073 choose.autocloseable.type.to.ignore.title=Choose AutoCloseable resource type to ignore
2074 big.decimal.method.without.rounding.called.display.name=Call to 'BigDecimal' method without a rounding mode argument
2075 big.decimal.method.without.rounding.called.problem.descriptor='BigDecimal.#ref()' called without a rounding mode argument
2076 bigdecimal.legacy.method.display.name='BigDecimal' legacy method called
2077 bigdecimal.legacy.method.problem.descriptor=Call to 'BigDecimal.#ref()' can use 'RoundingMode' enum constant
2078 bigdecimal.legacy.method.quickfix=Use 'RoundingMode' enum constant
2079 serializable.stores.non.serializable.display.name=Serializable object implicitly stores non-Serializable object
2080 serializable.lambda.stores.non.serializable.problem.descriptor=Serializable lambda implicitly stores non-Serializable object of type ''{0}''
2081 serializable.local.class.stores.non.serializable.problem.descriptor=Serializable local class ''{1}'' implicitly stores non-Serializable object of type ''{0}''
2082 serializable.anonymous.class.stores.non.serializable.problem.descriptor=Serializable anonymous class implicitly stores non-Serializable object of type ''{0}''
2083 assignment.to.lambda.parameter.display.name=Assignment to lambda parameter
2084 assignment.to.lambda.parameter.problem.descriptor=Assignment to lambda parameter <code>#ref</code> #loc
2085 class.with.only.private.constructors.display.name=Class with only 'private' constructors should be declared 'final'
2086 class.with.only.private.constructors.problem.descriptor=Class <code>#ref</code> with only 'private' constructors should be declared 'final'
2087 property.value.set.to.itself.display.name=Property value set to itself
2088 equals.with.itself.display.name='equals()' called on itself
2089 equals.with.itself.problem.descriptor=Identical qualifier and argument to <code>#ref()</code> call
2090 junit4.method.naming.convention.display.name=JUnit 4 test method naming convention
2091 junit4.method.naming.convention.element.description=JUnit 4 test method
2092 junit3.method.naming.convention.display.name=JUnit 3 test method naming convention
2093 junit3.method.naming.convention.element.description=JUnit 3 test method
2094 introduce.holder.class.quickfix=Introduce holder class
2095 double.brace.initialization.display.name=Double brace initialization
2096 double.brace.initialization.quickfix=Replace with regular initialization
2097 return.of.inner.class.display.name=Return of instance of anonymous, local or inner class
2098 return.of.anonymous.class.problem.descriptor=Return of instance of anonymous class #loc
2099 return.of.local.class.problem.descriptor=Return of instance of local class <code>{0}</code> #loc
2100 return.of.inner.class.problem.descriptor=Return of instance of non-static inner class <code>{0}</code> #loc
2101 return.of.inner.class.ignore.non.public.option=Ignore returns from non-public methods
2102 parameter.type.prevents.overriding.display.name=Parameter type prevents overriding
2103 parameter.type.prevents.overriding.problem.descriptor=Parameter type <code>#ref</code> is located in ''{0}'' while super method parameter type is located in ''{1}'' preventing overriding #loc
2104 parameter.type.prevents.overriding.quickfix=Change type of parameter to ''{0}''
2105 parameter.type.prevents.overriding.family.quickfix=Change type of parameter
2106 suspicious.getter.setter.display.name=Suspicious getter/setter
2107 suspicious.setter.problem.descriptor=Setter <code>#ref()</code> assigns field ''{0}'' #loc
2108 suspicious.getter.problem.descriptor=Getter <code>#ref()</code> returns field ''{0}'' #loc
2109 unnecessary.break.display.name=Unnecessary 'break' statement
2110 unnecessary.break.problem.descriptor=<code>#ref</code> statement is unnecessary #loc
2111 utility.class.can.be.enum.display.name=Utility class can be 'enum'
2112 utility.class.code.can.be.enum.problem.descriptor=Utility class <code>\#ref</code> can be 'enum' #loc
2113 utility.class.code.can.be.enum.quickfix=Convert to 'enum'
2114 non.public.clone.display.name='clone()' method not 'public'
2115 non.public.clone.problem.descriptor=<code>#ref()</code> method not 'public' #loc
2116 only.warn.on.public.clone.methods=Only warn on 'public' clone methods
2117 only.warn.on.protected.clone.methods=Only warn on 'protected' clone methods
2118 clone.returns.class.type.display.name='clone()' should have return type equal to the class it contains
2119 clone.returns.class.type.problem.descriptor=''clone()'' should have return type ''{0}'' #loc
2120 clone.returns.class.type.quickfix=Change return type to ''{0}''
2121 clone.returns.class.type.family.quickfix=Change return type to class type
2122 use.of.clone.display.name=Use of 'clone()' or 'Cloneable'
2123 use.of.clone.call.problem.descriptor=Call to <code>#ref()</code>
2124 use.of.clone.call.method.problem.descriptor=Implementation of <code>#ref()</code>
2125 use.of.clone.reference.problem.descriptor=Use of <code>#ref</code>
2126 dangling.javadoc.display.name=Dangling Javadoc comment
2127 dangling.javadoc.problem.descriptor=Dangling Javadoc comment #loc
2128 dangling.javadoc.convert.quickfix=Replace with block comment
2129 dangling.javadoc.delete.quickfix=Remove dangling comment
2130 equals.replaceable.by.objects.call.display.name='equals()' expression replaceable by 'Objects.equals()' expression
2131 equals.replaceable.by.objects.call.problem.descriptor=<code>#ref</code> replaceable by 'Objects.equals()' expression #loc
2132 equals.replaceable.by.objects.call.quickfix=Replace with 'Objects.equals()' expression
2133 array.objects.equals.display.name='Objects.equals()' called on arrays
2134 array.objects.equals.problem.descriptor=<code>Objects.#ref()</code> on arrays should probably be 'Arrays.equals()' #loc
2135 array.objects.deep.equals.problem.descriptor=<code>Objects.#ref()</code> on arrays should probably be 'Arrays.deepEquals()' #loc
2136 extends.throwable.display.name=Class directly extends 'java.lang.Throwable'
2137 anonymous.extends.throwable.problem.descriptor=Anonymous class directly extends 'java.lang.Throwable' #loc
2138 extends.throwable.problem.descriptor=class <code>#ref</code> directly extends 'java.lang.Throwable' #loc
2139 lambda.parameter.naming.convention.display.name=Lambda parameter naming convention
2140 lambda.parameter.naming.convention.element.description=Lambda parameter
2141 assert.message.not.string.display.name='assert' message is not a String
2142 assert.message.of.type.boolean.problem.descriptor=''assert'' message of type ''{0}'' #loc
2143 assert.message.not.string.only.warn.boolean.option=Only warn when 'assert' message is boolean or java.lang.Boolean
2144 suspicious.literal.underscore.display.name=Suspicious underscore in number literal
2145 suspicious.literal.underscore.problem.descriptor=Group in number literal with underscores does not have length 3 #loc
2146 unary.plus.quickfix=Remove unary '+'
2147 super.tear.down.in.finally.display.name='super.tearDown()' not called from 'finally' block
2148 super.tear.down.in.finally.problem.descriptor=<code>#ref()</code> not called from 'finally' block #loc
2149 confusing.floating.point.literal.option=Ignore floating point literals in scientific notation
2150 class.may.be.interface.java8.option=Report classes containing non-abstract methods when using Java 8
2151 simplifiable.boolean.expression.display.name=Simplifiable boolean expression
2152 unnecessary.initcause.display.name=Unnecessary call to 'Throwable.initCause()'
2153 unnecessary.initcause.problem.descriptor=Unnecessary <code>Throwable.#ref()</code> call
2154 unnecessary.initcause.quickfix=Remove 'Throwable.initCause()' call
2155 consider.static.final.fields.constant.option=Consider 'static final' fields constant
2156 atomic.field.updater.not.static.final.display.name=AtomicFieldUpdater field not declared 'static final'
2157 atomic.field.updater.not.static.final.problem.descriptor={0} field <code>#ref</code> is not declared ''static final'' #loc
2158 atomic.field.updater.issues.display.name=AtomicFieldUpdater issues
2159 field.not.found.in.class.problem.descriptor=No field named ''{0}'' found in class ''{1}''
2160 field.incorrect.type.problem.descriptor=Field ''{0}'' does not have type ''{1}''
2161 field.missing.volatile.modifier.problem.descriptor=Field ''{0}'' does not have ''volatile'' modifier
2162 field.has.static.modifier.problem.descriptor=Field ''{0}'' has ''static'' modifier
2163 private.field.not.accessible.problem.descriptor=''private'' field ''{0}'' is not accessible from here
2164 package.local.field.not.accessible=package-private field ''{0}'' is not accessible from here
2165 protected.field.not.accessible.problem.descriptor=''protected'' field ''{0}'' is not accessible from here
2166 interface.clashes.with.object.class.display.name=Interface method clashes with method in 'java.lang.Object'
2167 interface.clashes.with.object.class.problem.descriptor=<code>#ref()</code> clashes with method in 'java.lang.Object'
2168 optional.used.as.field.or.parameter.type.display.name='Optional' used as field or parameter type
2169 optional.used.as.field.type.problem.descriptor=<code>#ref</code> used as type for field ''{0}''
2170 optional.used.as.parameter.type.problem.descriptor=<code>#ref</code> used as type for parameter ''{0}''
2171 lambda.unfriendly.method.overload.display.name=Lambda unfriendly method overload
2172 lambda.unfriendly.method.overload.problem.descriptor=Lambda unfriendly overload of method <code>#ref()</code>
2173 lambda.unfriendly.constructor.overload.problem.descriptor=Lambda unfriendly overload of constructor <code>#ref()</code>
2174 optional.contains.collection.display.name='Optional' contains array or collection
2175 optional.contains.collection.problem.descriptor='Optional' contains collection <code>#ref</code>
2176 optional.contains.array.problem.descriptor='Optional' contains array <code>#ref</code>
2177 optional.get.without.is.present.display.name='Optional.get()' without 'isPresent()' check
2178 optional.get.without.is.present.problem.descriptor=<code>{0}.#ref()</code> without ''isPresent()'' check
2179 synchronization.on.get.class.display.name=Synchronization on 'getClass()'
2180 synchronization.on.get.class.problem.descriptor=Synchronization on <code>#ref()</code> #loc