¿Hay alguna herramienta a la que se pueda asignar una ruta de clases o carpeta, y buscará a través de todos los archivos .jar buscando referencias a una clase en particular?Herramientas para encontrar todas las dependencias en Java jar
Me habría ahorrado un día de búsqueda para resolver this kind of problem.
En mi caso, tuve que averiguar de dónde venía una referencia deshonesta a una clase, ya que impedía que JBoss comenzara correctamente debido a un NoClassDefFoundError
. Supongo que estoy buscando esto:
java -jar magicbullet.jar /path/to/search com.myproject.DodgyClass
Searching...
com.problematic.Otherclass in /path/to/search/dodgy.jar implements com.myproject.DodgyClass
O similar. Si no, escribiré uno.
Consulte [Java class finder Tool] (http://stackoverflow.com/questions/5577543/java-class-finder-tool) – wjans
Mientras más leo esto, menos entiendo. ¿Cuál es tu pregunta? ¿Desea solo encontrar en qué jar se encuentra determinada clase, o desea saber quién es el que hace referencia a una determinada clase? – Kaj
En mi caso, quería encontrar la clase en la que jar hacía referencia a otra clase específica. Pasé años intentando encontrar de dónde venía un NoClassDefError, al final descubrí que una de las clases en uno de nuestros jars implementó una interfaz que no estaba en el classpath. El mensaje de error de JBoss no fue útil. Una herramienta como la que estoy buscando podría encontrar eso muy rápidamente. – Rich