Dubbo-动态编译
Posted gaohuan30
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dubbo-动态编译相关的知识,希望对你有一定的参考价值。
1.触发创建动态代理类
private Class<?> createAdaptiveExtensionClass() {
String code = createAdaptiveExtensionClassCode();
ClassLoader classLoader = findClassLoader();
com.alibaba.dubbo.common.compiler.Compiler compiler = ExtensionLoader.getExtensionLoader(com.alibaba.dubbo.common.compiler.Compiler.class).getAdaptiveExtension();
return compiler.compile(code, classLoader);
}
2. 生成Compiler工具loader
3. 初始化JavassistCompiler辅助使用对字节码文件的操纵
AdaptiveCompiler.compile(code,classLoader)
执行doCompile方法-使用javassist方法创建对应的class文件
4. 外层实例化对象并放入缓存汇总
以上是关于Dubbo-动态编译的主要内容,如果未能解决你的问题,请参考以下文章