java-bytecode-asm

    1热度

    3回答

    用于运行时字节码生成的许多库(工具) ASM,Javassit,CGLIB,BCEL。所有这些工具都能够动态地操作java字节码,这与javac编译器等工具不同。 我的理解是生成字节码并稍后将它们加载到类加载器中。对我而言,问题是在生成可能非常大的Java方法/类的字节码时,这些工具之间是否存在性能差异和问题。 另一个方案是应用其保持在时间运行,并且将所生成的字节码将是微不足道的,但是连续的(应用

    1热度

    1回答

    如何使用ASM库将此代码插入到Java类文件中的方法中? long MEGABYTE = 1024L * 1024L; Runtime runtime = Runtime.getRuntime(); runtime.gc(); long memory = runtime.totalMemory() - runtime.freeMemory(); double memoryU

    1热度

    1回答

    转换的字节码结构和XML我一直在使用ASM做几件东西一样解析使用ASM提供ClassVisitor方法的Java类。据我所知它提供了其他包过,我想了解XML包功能bytecode结构转换和从XML。你能否给我提供一个java例子,我们如何才能做到这一点? 非常感谢。 〜佳日

    0热度

    1回答

    我正在使用ASM的ClassWriter来复制类。我使用反射来加载这个重复的字节代码的类,但是当我尝试用重复类的实例调用重复类的方法时,我得到'对象不是声明类的实例'异常。 Object originalObj = ... Class<?> originalClass = obj.getClass(); String methodName = ... ClassReader cr = ne

    0热度

    1回答

    我目前停留在以下问题: 尝试下面执行的代码,我得到的“注册1包含错误类型”的Java错误。由于我只使用1个堆栈块整数,我真的不知道该寄存器中的错误类型是如何得到的。下面是我的jasmin-java-bytecode,它编译得很好,但是执行时会抛出错误。 的.class公众的HelloWorld 。超爪哇/郎/对象 .method public static fakultaet(I)I .limi

    -2热度

    1回答

    使用ASM Bytecode我们可以识别循环或while循环出现在方法体中吗?

    5热度

    1回答

    是ASM框架的新手。我一直在为这个ASM框架工作一周。我在网上看到了有关解析类和从头开始生成.class文件的教程。 但我无法按照如何修改ASM中的现有类。 请帮助我。 我无法遵循ClassVisitor,ClassWriter和ClassReader之间的执行流程。 请通过为我提供以下代码的ASM示例来解决我的问题。 public class ClassName { public void

    0热度

    1回答

    我想编写代码,如下所示。 MyClass a = new @MyAnnotation MyClass() 假设MyClass的方法类似于下面 public class MyClass { int a; public void setValue(int a) { this.a = a; } } 所以,当有人外币MyClass的对象与注释,它应

    0热度

    2回答

    我想通过字节码修改使用asm字节码检测库加载一些对象。 我正在使用retransformClasses()方法重新转换类。 我加载这样的对象: super.visitVarInsn(Opcodes.ALOAD, 0); super.visitFieldInsn(Opcodes.GETFIELD, owner, name, desc); super.visitMethodInsn(org.obj

    0热度

    1回答

    我一直在与一些ASM(使用的Minecraft锻造公司的Transform类,但它不应该是相关的),但我一直有一个NoClassDefFoundError的和一个NullPointerException崩溃。我已经缩小了问题和理论解决方案的范围。 我试图在操作数23注入代码,但是代码包含跳转到已经在代码的其他地方存在(在操作数68)的标签。 (m是methodNode) m.instruction