Jdeps и военные архивы

#java #war #jdeps

Вопрос:

Можно ли запустить Jdeps в файле .war?

Я получаю эту ошибку при попытке:

 Exception in thread "main" com.sun.tools.classfile.Dependencies$ClassFileError
        at jdk.jdeps/com.sun.tools.jdeps.ClassFileReader.scan(ClassFileReader.java:165)
        at jdk.jdeps/com.sun.tools.jdeps.ClassFileReader.entries(ClassFileReader.java:114)
        at jdk.jdeps/com.sun.tools.jdeps.Archive.contains(Archive.java:95)
        at jdk.jdeps/com.sun.tools.jdeps.JdepsConfiguration$Builder.addRoot(JdepsConfiguration.java:495)
        at jdk.jdeps/com.sun.tools.jdeps.JdepsTask.buildConfig(JdepsTask.java:597)
        at jdk.jdeps/com.sun.tools.jdeps.JdepsTask.run(JdepsTask.java:557)
        at jdk.jdeps/com.sun.tools.jdeps.JdepsTask.run(JdepsTask.java:533)
        at jdk.jdeps/com.sun.tools.jdeps.Main.main(Main.java:49)
Caused by: com.sun.tools.classfile.ConstantPool$InvalidIndex: invalid index #13907
        at jdk.jdeps/com.sun.tools.classfile.ConstantPool.get(ConstantPool.java:269)
        at jdk.jdeps/com.sun.tools.classfile.ConstantPool.get(ConstantPool.java:280)
        at jdk.jdeps/com.sun.tools.classfile.ConstantPool.getClassInfo(ConstantPool.java:291)
        at jdk.jdeps/com.sun.tools.classfile.ClassFile.getName(ClassFile.java:123)
        at jdk.jdeps/com.sun.tools.jdeps.ClassFileReader.scan(ClassFileReader.java:162)
 

Комментарии:

1. Как вы запускали jdeps в своем файле?

2. Я запускаю «jdeps -v myFile.war» с java 11.

3. Я не верю, что вы можете запустить это в файле .war. Смотрите страницу инструментов команды jdeps, в которой явно указано «Путь к файлу .class, каталогу или файлу JAR для анализа». и «зависимости на уровне пакета или класса».

4. Я думал, что может быть шанс, что он примет это во внимание, но это казалось невозможным. Спасибо