sofastack / sofa-ark

SOFAArk is a light-weight,java based classloader isolation framework.
https://www.sofastack.tech/projects/sofa-boot/sofa-ark-readme/
Apache License 2.0
1.56k stars 497 forks source link

springboot-sofa-ark-dubbo #122

Closed lux2018 closed 6 years ago

lux2018 commented 6 years ago

在springboot应用中引入sofa-ark后,可以继续使用dubbo么?

QilongZhang commented 6 years ago

@lux2018 可以

lux2018 commented 6 years ago

我们使用dubbo版本2.5.3,在Idea里边启动没有问题,但是打成ark包启动之后,看到的dubbo版本变成了2.0.0 @QilongZhang

khotyn commented 6 years ago

@lux2018 这个一般上是工程的依赖的问题,可能在打包 Ark Plugin 和直接使用的时候,maven 仲裁除了不同的 dubbo 的版本。你这边可以提供一个简单的 Demo 复现这个问题么?然后把 Demo 放到 Github 上,我们 clone 下来看下。

lux2018 commented 6 years ago

@khotyn 好的,我这边方便的时候提供一下demo,不过我有排查过ark包里边只有一个2.6.2的dubbo的jar包,运行之后dubbo版本变成了2.0.0,这个2.0.0的版本应该是一个默认版本

khotyn commented 6 years ago

@lux2018 ark 本身不依赖于 dubbo,所以你这个问题还是得等你提供 demo 之后我们再分析一下。

lux2018 commented 6 years ago

@khotyn demo地址:https://github.com/lux2018/sofa-ark-sprinboot-dubbo.git

QilongZhang commented 6 years ago
lib/jackson-annotations-2.8.0.jar
lib/dubbo-2.6.2.jar
lib/netty-3.7.0.Final.jar
lib/curator-client-2.11.0.jar
lib/tomcat-embed-websocket-8.5.32.jar
lib/lombok-1.16.22.jar
lib/hibernate-validator-5.3.6.Final.jar
lib/sofa-ark-common-0.5.1.jar
lib/tomcat-embed-el-8.5.32.jar
lib/jcommander-1.72.jar
lib/spring-expression-4.3.18.RELEASE.jar
lib/snakeyaml-1.17.jar
lib/classmate-1.3.4.jar
lib/jcl-over-slf4j-1.7.25.jar
lib/javassist-3.21.0-GA.jar
lib/sofa-ark-exception-0.5.1.jar
lib/jboss-logging-3.3.2.Final.jar
lib/spring-aop-4.3.18.RELEASE.jar
lib/sofa-ark-springboot-starter-0.5.1.jar
lib/hamcrest-core-1.3.jar
lib/spring-boot-starter-1.5.15.RELEASE.jar
lib/spring-beans-4.3.18.RELEASE.jar
lib/sofa-ark-support-starter-0.5.1.jar
lib/spring-webmvc-4.3.18.RELEASE.jar
lib/spring-boot-starter-tomcat-1.5.15.RELEASE.jar
lib/jackson-databind-2.8.11.2.jar
lib/guava-16.0.1.jar
lib/validation-api-1.1.0.Final.jar
lib/netty-3.2.5.Final.jar
lib/bsh-2.0b6.jar
lib/sofa-ark-spi-0.5.1.jar
lib/spring-boot-starter-web-1.5.15.RELEASE.jar
lib/commons-io-2.5.jar
lib/jline-0.9.94.jar
lib/log4j-over-slf4j-1.7.25.jar
lib/testng-6.14.3.jar
lib/spring-web-4.3.18.RELEASE.jar
lib/sofa-ark-archive-0.5.1.jar
lib/logback-core-1.1.11.jar
lib/spring-boot-starter-logging-1.5.15.RELEASE.jar
lib/tomcat-embed-core-8.5.32.jar
lib/zookeeper-3.4.6.jar
lib/spring-core-4.3.18.RELEASE.jar
lib/tomcat-annotations-api-8.5.32.jar
lib/curator-framework-2.11.0.jar
lib/spring-boot-1.5.15.RELEASE.jar
lib/jackson-core-2.8.11.jar
lib/log4j-1.2.16.jar
lib/junit-4.12.jar
lib/slf4j-api-1.7.25.jar
lib/spring-context-4.3.18.RELEASE.jar
lib/logback-classic-1.1.11.jar
lib/jul-to-slf4j-1.7.25.jar
lib/spring-boot-autoconfigure-1.5.15.RELEASE.jar

@lux2018 这是我这边看到插件依赖清单,只有 2.6.2 版本。你是如何确认运行时使用的2.0.0 版本

lux2018 commented 6 years ago

@QilongZhang 打成ark包之后运行,启动日志中:[DUBBO] Subscribe:......dubbo version: 2.0.0,.......初步怀疑是com.alibaba.dubbo.common.Version获取版本时没有拿到dubbo.jar中MANIFEST.MF 中的版本信息.

QilongZhang commented 6 years ago
2018-09-14 10:28:18.625  INFO 88976 --- [bboShutdownHook] com.alibaba.dubbo.config.AbstractConfig  :  [DUBBO] Run shutdown hook now., dubbo version: 2.6.2, current host: 10.15.232.133
2018-09-14 10:28:18.625  INFO 88976 --- [bboShutdownHook] c.a.d.r.support.AbstractRegistryFactory  :  [DUBBO] Close all registries [], dubbo version: 2.6.2, current host: 10.15.232.133

我这边拿你工程测试,打印的是2.6.2版本

lux2018 commented 6 years ago

@QilongZhang 你这个是直接在IDE中启动的吧,我是在打成jar包之后,使用java -jar xxx.jar 之后才有问题

QilongZhang commented 6 years ago

@lux2018 不是哈,是通过 java -jar 启动的。

lux2018 commented 6 years ago

@QilongZhang 我这边通过java -jar 启动日志都是2.0.0; 2018-09-14 15:18:15.827 INFO 2012 --- [ main] com.alibaba.dubbo.config.AbstractConfig : [DUBBO] The service ready on spring started. service: com.lux.sofa.ark.demo.service.CommonService, dubbo version: 2.0.0, current host: 10.xxxx 2018-09-14 15:18:15.952 INFO 2012 --- [ main] com.alibaba.dubbo.config.AbstractConfig : [DUBBO] Export dubbo service com.lux.sofa.ark.demo.service.CommonService to local registry, dubbo version: 2.0.0, current host: 10.xxxxx

QilongZhang commented 6 years ago

@lux2018 麻烦请上传一份你打包后的包哈。

lux2018 commented 6 years ago

@QilongZhang target里边有打好的jar包哈,https://github.com/lux2018/sofa-ark-sprinboot-dubbo.git

QilongZhang commented 6 years ago

@lux2018 应该是ark 版本的问题,这个问题已经在0.5.2修复。 https://github.com/alipay/sofa-ark/issues/118

lux2018 commented 6 years ago

@QilongZhang 好的,我这边试一下,非常感谢!