¿Cómo hago cumplir la asignación a los argumentos de los métodos que utilizan FindBugs?
-
19-09-2019 - |
Pregunta
Como alternativa a ensuciar mi código con miles de palabras clave finales frente a mis parámetros, estoy tratando de hacerla cumplir mediante FindBugs.
No parece posible hacer esto, pero debe haber una manera, si no es así?
Gracias
Solución
Findbugs tiene una relacionada fallo :
IP: Un parámetro está muerto a la entrada a un método pero sobrescribe (IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN)
El valor inicial de este parámetro es ignorado, y el parámetro es sobrescrito aquí. A menudo, esto indica una creencia errónea de que la escritura en el parámetro será transportado de vuelta a la persona que llama.
Sin embargo, no creo que esto va a coger los casos en que se sobrescribe el parámetro después de leer el parámetro en alguna parte.
Por otro lado, parece que PMD tiene un regla que es exactamente lo que está buscando:
AvoidReassigningParameters: Reasignación de valores a los parámetros es una práctica cuestionable. Use un temporal variable local en su lugar.
Y si eso no funciona para usted, las personas tienen una lista de PMD muchas de las damas más estáticas, tanto libres como comerciales que usted podría considerar.