Utiliser l' jar
(ou unzip -v
), grep
, et find
des commandes.
Par exemple, la liste de tous les fichiers de classe qui correspond au nom de:
for i in *.jar; do jar -tvf "$i" | grep -Hsi ClassName; done
Si vous connaissez l'ensemble de la liste des archives Java vous voulez la recherche, vous pouvez aussi les placer dans le même répertoire à l'aide de (symbolique) des liens.
Ou utiliser find
(cas avec tact) pour trouver le fichier JAR qui contient un nom de classe:
find path/to/libs -name '*.jar' -exec grep -Hls ClassName {} \;
Par exemple, pour trouver le nom de l'archive contenant IdentityHashingStrategy
:
$ find . -name "*.jar" -exec grep -Hsli IdentityHashingStrategy {} \;
./trove-3.0.3.jar
Si le POT pourrait être n'importe où dans le système et l' locate
commande est disponible:
for i in $(locate "*.jar");
do echo $i; jar -tvf $i | grep -Hsi ClassName;
done
Ou essayez ce moteur de recherche:
Ou créer un graphique à l'aide de mon logiciel: