Hay una inspección "Declaración no utilizada" que puede encontrar todo el código no utilizado en Intellij Idea. (vea esta pregunta ) Pero quiero encontrar todas las clases no utilizadas, no métodos, variables, etc. Solo clases. (es difícil encontrar solo clases en la lista de resultados 3000). ¿Como puedo hacer eso?
java
intellij-idea
dead-code
Cereza
fuente
fuente
Respuestas:
Aparecerá la configuración
La configuración se cierra
La búsqueda comienza
fuente
No creo que esto sea factible. Sospecho que esta característica se deja fuera intencionalmente de los IDE porque no se puede usar de manera segura de la misma manera que otras refactorizaciones "eliminar XXX no utilizadas".
Las declaraciones no utilizadas que IDEA (y AFAIK, NetBeans) buscan son para miembros privados y variables locales: cosas que no son accesibles, incluso dinámicamente, desde fuera de esa clase o alcance. (Bueno, al menos sin hacer cosas con Reflection o pirateo de JVM que se supone que no debes hacer). No importa lo que haga el código externo con tu biblioteca, no hará que esas cosas se usen, porque su alcance es limitado y IDE puede verlo todo. El compilador puede determinar esto mirando solo su código.
Para las clases, incluso si no tienen
public
acceso, se puede hacer referencia a ellas dinámicamenteClass.forName()
, y esto realmente sucede en el código en vivo. Entonces, incluso si aparentemente no se usan dentro del código de su proyecto, podrían usarse dependiendo de lo que usted o el código externo que use su biblioteca ejecute. Por lo tanto, el IDE no puede garantizar que eliminar esas clases no cambie el comportamiento externo observable.Por eso creo que IDEA simplemente no proporciona este comportamiento: podría dar a los usuarios falsas expectativas de seguridad, y eliminarlos no es una refactorización segura.
fuente
Tal vez debería examinar la
Unused Symbol
inspección con la siguiente configuración:fuente
No estoy seguro de si esto responderá a su pregunta, pero utilicé una herramienta en el pasado como Fortify para ejecutar reglas de revisión de código en el proyecto, que apunta con precisión a las importaciones no utilizadas, el código muerto, las clases no utilizadas, etc. Es un software pago pero yo Estoy seguro de que habrá algunos complementos / software gratuitos disponibles para el mismo.
fuente