Methodencode zu groß! Ausnahme mit ASM

Ich iteriere über eine Klasse mit ASM-Code, ohne einen Bytecode zu manipulieren. Aber wenn ich Klassenschreiber in bytearray (cw.toByteArray ()) konvertiere, erhalte ich einen zu großen Methodencode! Ausnahme.

Kann mir jemand sagen, wann das passiert ..

Mein Code-Snippet lautet wie folgt:

InputStream in= new FileInputStream("D:/AshiqWorkspace/RandD/ByteCodeStudy/temp/GameManager.class");
ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS|ClassWriter.COMPUTE_FRAMES);
ClassVisitor ca = null;
ca = new CustomClassNode(cw);  // CustomClassNode class extends ClassNode implements Opcodes
cr.accept(ca, 0);   
File outputDir=new File("D:/AshiqWorkspace/RandD/ByteCodeStudy/out");
outputDir.mkdirs();
DataOutputStream dout=new DataOutputStream(new FileOutputStream(new File(outputDir,"GameManager.class")));
dout.write(cw.toByteArray()); // on this line "method code too large exception coming"

Antworten auf die Frage(1)

Ihre Antwort auf die Frage