javassist

    0热度

    1回答

    我尝试向方法添加“声明”语句。 但我得到这个异常: 引起的:在了Javassist断言(布尔)在javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:716)在mypackage.MyClassThatIsInstrumented 没有发现 :编译错误。 javassist.com处的javassist.compiler.

    2热度

    1回答

    我正在使用Javassist在运行时扩展某些类。 在几个地方(在代码中),我需要创建Javassist ConstPool类的实例。 例如,标记生成的类为synthetic,我写了这样的事情: CtClass ctClassToExtend = ... //class to extend CtClass newCtClass = extend(ctClassToExtend, ...); //m

    1热度

    1回答

    我需要获得(作为字符串)某些Java类型的类型签名。 例如,这是某些ParameterizedType的类型签名: Lorg/mapackage/MyClass<Ljava/lang/String;>; 我需要这在应用程序的上下文中被用Javassist显影。 为了更好地解释我正在寻找的内容,我展示了使用Javassist为私有字段生成getter方法的方法createGetter的摘录。字段

    1热度

    1回答

    从我所看到的我可以在使用javassist的java类中创建一个新的静态初始化程序。但我需要的是一个非静态初始化器。 因此,而不是添加: 静态{...}的一类,我只是想添加{..} 我想这样做的原因是因为我想创建一个返回类的类加载器这是ProxyFactory的封装,因为我必须为某些类添加一个处理程序。我的想法是将此代码添加到每个类的非静态初始化器: ((javassist.util.proxy.

    0热度

    2回答

    import javassist.bytecode.Bytecode; import javassist.bytecode.ConstPool; public class Coverage { public static void main(String[] args) { ConstPool cp = new ConstPool("Hello"); by

    9热度

    2回答

    我有一个java类,它创建一个基于javassist类加载器的自定义类加载器启动,然后运行真正的程序类。 我收到以下错误: log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not assignable to a "org.apache.log4j.Appender" variable. log4j:ERROR The c

    4热度

    1回答

    我有一个maven项目,它使用javac/aspectj编译器进行编译。 我想运行在编译了一个javassist程序的类上,该程序处理已编译的类并向它们添加内容。 我以为使用“process-classes”阶段来运行我的工具。 我的问题是用javassist遍历在“target/classes”中创建的类文件进行迭代的最佳方式是什么,因此我可以在之后加载,修复和保存。 另一个要求是在测试类上运行

    2热度

    2回答

    我想将简单的Play(1.2.4)应用程序部署到WebSphere 8.我的应用程序在Windows上本地工作。两者都是Java 1.6。 play clean play war --zip -o c:\sampleapp 然后修改web.xml中产生的定义我的服务器的数据源,一次部署构建war文件:我使用创建一个WAR文件。在部署期间,它从web.xml中找到我的resource-ref,

    1热度

    1回答

    任何人都知道何时可以使用Javassist 3.17.0-GA? 有一个在Javaassit与Java 7中使用时被打破PowerMock的错误(固定在3.17.0-GA): https://issues.jboss.org/browse/JASSIST-160?focusedCommentId=12718716&page=com.atlassian.jira.plugin.system.issu

    2热度

    1回答

    我可以做一个实例: Class<?> jClazz = Class.forName(XXXX); jClazz.newInstance(); 但我需要Javassist所修改类: CtClass ctClass = cp.get(path); CtConstructor m = CtNewConstructor.make("public " + className + "() {}", c