ASM documentation (pdf) говорит, что класс Frame
имеет общий тип, предоставляющий пример использования: Frame<BasicValue>
. (на стр. 119, если необходимо)Класс рамки ASM не имеет общего типа
При взгляде на source мы можем видеть его декларацию как Frame<V extends Value>
.
Но по какой-то причине, когда в моем проекте я указываю Maven зависимостей
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
<version>4.2</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-analysis</artifactId>
<version>4.2</version>
</dependency>
или просто нагрузки в соответствии артефактов вручную из хранилища, попытка использовать Frame<...>
заканчивается ошибкой:
Type org.objectweb.asm.tree.analysis.Frame doesn't have type parameters
И Intellij IDEA
декомпилятор говорит, что Frame
действительно не имеет ни одного.
Эта же проблема имеет место с Analyzer
и Interpreter
классами.
Как я могу победить?
Вы не можете загрузить банку и сохранить Generics. Они оптимизируют свои загрузки. Вам нужно будет получить исходный код и скомпилировать его самостоятельно. –