ProGuard может использоваться для печати отчета о неиспользуемых классах / методах. Хотя доставлять в него все зависимые банки очень сложно.
В этих параметрах перечислены неиспользуемые классы, поля и методы в приложении mypackage.MyApplication:
-injars in.jar
-libraryjars <java.home>/lib/rt.jar
-dontoptimize
-dontobfuscate
-dontpreverify
-printusage
-keep public class mypackage.MyApplication {
public static void main(java.lang.String[]);
}