diff --git a/src/org/redkale/net/http/Rest.java b/src/org/redkale/net/http/Rest.java index 9e3fe5c74..f17ea1a82 100644 --- a/src/org/redkale/net/http/Rest.java +++ b/src/org/redkale/net/http/Rest.java @@ -92,7 +92,16 @@ public final class Rest { return new MethodVisitor(Opcodes.ASM5) { @Override public void visitLocalVariable(String name, String description, String signature, Label start, Label end, int index) { - if (index > 0) fieldnames.add(name); + if (index < 1) return; + int size = fieldnames.size(); + //index并不会按顺序执行的 + if (index > size) { + for (int i = size; i < index; i++) { + fieldnames.add(" "); + } + fieldnames.set(index - 1, name); + } + fieldnames.set(index - 1, name); } }; } diff --git a/src/org/redkale/util/Creator.java b/src/org/redkale/util/Creator.java index bf87e4894..1b34dc1a3 100644 --- a/src/org/redkale/util/Creator.java +++ b/src/org/redkale/util/Creator.java @@ -109,7 +109,16 @@ public interface Creator { return new MethodVisitor(Opcodes.ASM5) { @Override public void visitLocalVariable(String name, String description, String signature, Label start, Label end, int index) { - if (index > 0) fieldnames.add(name); + if (index < 1) return; + int size = fieldnames.size(); + //index不会按顺序执行的 + if (index > size) { + for (int i = size; i < index; i++) { + fieldnames.add(" "); + } + fieldnames.set(index - 1, name); + } + fieldnames.set(index - 1, name); } }; }