【发布时间】:2021-04-29 08:51:53
【问题描述】:
Class<?> metricTags = new ByteBuddy()
.subclass(Object.class)
.name("demo.metrics.MetricTags")
.annotateType(AnnotationDescription.Builder.ofType(Component.class).build())
.annotateType(AnnotationDescription.Builder.ofType(Data.class).build())
.defineField("sourceApp", String.class, Visibility.PUBLIC)
.annotateField(AnnotationDescription.Builder.ofType(Value.class).define("sourceApp", "dsdw23").build())
.defineField("sourceServiceNamespace", String.class, Visibility.PRIVATE)
.defineField("sourceServiceName", String.class, Visibility.PRIVATE)
.defineField("protocol", String.class, Visibility.PRIVATE).value("http")
.defineField("appName", String.class, Visibility.PRIVATE)
.make()
.load(AgentMain.class.getClassLoader(), ClassLoadingStrategy.Default.WRAPPER)
.getLoaded();
报告错误: 原因:java.lang.IllegalArgumentException:接口 lombok.Value 没有定义名为 sourceApp 的属性
【问题讨论】:
-
你能告诉你属性文件的内容吗?
标签: java spring-boot annotations byte-buddy javaagents