Closed hejiarui2015 closed 3 years ago
你应该用
<artifactId>sofa-tracer-dubbo-plugin</artifactId>
而不是
<artifactId>sofa-tracer-dubbo-2.6.x-plugin</artifactId>
我用的是 sofa-tracer-dubbo-common-plugin
这样配才行:
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>tracer-sofa-boot-starter</artifactId>
<version>3.0.12</version>
<exclusions>
<exclusion>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofa-tracer-dubbo-common-plugin</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofa-tracer-dubbo-plugin</artifactId>
<version>3.0.12</version>
</dependency>
@hejiarui2015 sofa-tracer-dubbo-common-plugin 兼容了 2.6.x 和 2.7.x 的, 方便的话可以提供个复现 demo 吗?
Describe the bug
sofa tracser 与apache dubbo 2.7.8 版本不兼容 由于dubbo 2.7.8 将FutureAdapter 构造函数进行了修改 并且没有进行兼容处理 因此出现改问题
log
Caused by: java.lang.NoSuchMethodError: com.alibaba.dubbo.rpc.protocol.dubbo.FutureAdapter.(Lcom/alibaba/dubbo/remoting/exchange/ResponseFuture;)V\n\tat com.alipay.sofa.tracer.plugins.dubbo26x.DubboSofaTracerFilter.ensureSpanFinishes(DubboSofaTracerFilter.java:201)\n\tat com.alipay.sofa.tracer.plugins.dubbo26x.DubboSofaTracerFilter.doClientFilter(DubboSofaTracerFilter.java:156)\n\tat com.alipay.sofa.tracer.plugins.dubbo26x.DubboSofaTracerFilter.invoke(DubboSofaTracerFilter.java:91)\n\tat com.alibaba.dubbo.rpc.Filter.invoke(Filter.java:29)\n\tat org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83)\n\tat org.apache.dubbo.monitor.support.MonitorFilter.invoke(MonitorFilter.java:89)\n\tat org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83)\n\tat org.apache.dubbo.rpc.protocol.dubbo.filter.FutureFilter.invoke(FutureFilter.java:51)\n\tat org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83)\n\tat org.apache.dubbo.rpc.filter.ConsumerContextFilter.invoke(ConsumerContextFilter.java:69)\n\tat org.apache.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:83)\n\tat org.apache.dubbo.rpc.protocol.InvokerWrapper.invoke(InvokerWrapper.java:56)\n\tat org.apache.dubbo.rpc.cluster.support.FailoverClusterInvoker.doInvoke(FailoverClusterInvoker.java:82)\n\t... 80 common frames omitted\n",
Environment
java -version
): jdk 1.8uname -a
): linux