Tien,

It makes sense because it (and others like this) is an optional extension / 
support / function. We should decide to introduce the extra dependencies it 
requires when we enable it in configuration compared to the default. 
Another similar thing is that which driver you should introduce among zookeeper 
/ nacos / redis / others depends which implementation of registry you want to 
use and actually config.

In most cases the version may not matter so much but you'd better to pick it 
carefully to match just or newer to the version dubbo uses by default.

So is everything going well now? After introducing the necessary dependencies?

best regards,

Jason

> On Oct 25, 2019, at 18:19, Tien Dat PHAN <[email protected]> wrote:
> 
> Hi Jason,
> 
> The org.apache.dubbo:dubbo-serialization-kryo, for example, needs 
> com.esotericsoftware.kryo.Kryo for Kryo serialization.
> 
> org.apache.dubbo:dubbo-serialization-kryo itself has it declared in pom.xml
> 
> But you do "unzip -Z dubbo-2.7.3.jar |awk '{print $9}' |grep kryo", you don't 
> see it included.
> And we have to declare it directly in our application pom.xml
> We believe that this is not relevant, since we have to update the version of 
> com.esotericsoftware.kryo according to 
> org.apache.dubbo:dubbo-serialization-kryo.
> 
> Best 
> Dat
> 
> On 2019/10/25 08:17:18, Jason Joo <[email protected]> wrote: 
>> Hi, tien
>> 
>> `dubbo` is a "fat" jar which includes all the classes you may possibly use. 
>> 
>> You can confirm it using "unzip" as shown below:
>> 
>> 
>> bogon:2.7.3 hblzxsj$ unzip -Z dubbo-2.7.3.jar |awk '{print $9}' |grep kryo
>> org/apache/dubbo/common/serialize/kryo/
>> org/apache/dubbo/common/serialize/kryo/KryoObjectInput.class
>> org/apache/dubbo/common/serialize/kryo/utils/
>> org/apache/dubbo/common/serialize/kryo/utils/AbstractKryoFactory.class
>> org/apache/dubbo/common/serialize/kryo/KryoSerialization.class
>> org/apache/dubbo/common/serialize/kryo/utils/PooledKryoFactory.class
>> META-INF/maven/org.apache.dubbo/dubbo-serialization-kryo/
>> META-INF/maven/org.apache.dubbo/dubbo-serialization-kryo/pom.properties
>> org/apache/dubbo/common/serialize/kryo/CompatibleKryo.class
>> org/apache/dubbo/common/serialize/kryo/utils/ThreadLocalKryoFactory$1.class
>> org/apache/dubbo/common/serialize/kryo/KryoObjectOutput.class
>> org/apache/dubbo/common/serialize/kryo/utils/PrototypeKryoFactory.class
>> org/apache/dubbo/common/serialize/kryo/utils/ReflectionUtils.class
>> org/apache/dubbo/common/serialize/kryo/utils/KryoUtils.class
>> org/apache/dubbo/common/serialize/kryo/utils/ThreadLocalKryoFactory.class
>> META-INF/maven/org.apache.dubbo/dubbo-serialization-kryo/pom.xml
>> 
>> 
>> 
>> best regards,
>> 
>> Jason
>> 
>>> On Oct 25, 2019, at 16:06, Tien Dat PHAN <[email protected]> wrote:
>>> 
>>> Hi Jason,
>>> 
>>> We found that is not enough.
>>> As you have pointed out the dependency on  
>>> `http://repo1.maven.org/maven2/org/apache/dubbo/`
>>> All dependencies wrapped by org.apache.dubbo:dubbo are marked as optional.
>>> This means on our application pom.xml, we have to declare the libraries 
>>> that we need directly, as they are not brought directly from 
>>> org.apache.dubbo:dubbo dependencies (check 
>>> `https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html`)
>>> 
>>> Best
>>> Dat
>>> 
>>> On 2019/10/25 01:48:29, Jason Joo <[email protected]> wrote: 
>>>> Hi, tien
>>>> 
>>>> There is a problem in your `dependencies` section.
>>>> `dubbo` is a single package including all codes related dubbo core like 
>>>> `netty-all` while `dubbo-serialization-kryo` is already included in 
>>>> `dubbo`.
>>>> 
>>>> If you want to do some customizing like removing some useless support in 
>>>> `dubbo` you could use another way to introduce the dependencies like: 
>>>> dubbo-common, dubbo-cluster and etc. .
>>>> 
>>>> Certainly it will be so complicated because there are so many packages to 
>>>> decide which are required to be introduced and you can see the full list 
>>>> in `http://repo1.maven.org/maven2/org/apache/dubbo/` 
>>>> <http://repo1.maven.org/maven2/org/apache/dubbo/%60>.
>>>> 
>>>> So generally we just introduce `dubbo` instead. That's already enough.
>>>> 
>>>> best regards,
>>>> 
>>>> Jason
>>>> 
>>>>> On Oct 25, 2019, at 00:31, Tien Dat PHAN <[email protected]> wrote:
>>>>> 
>>>>> the dubbo-common library as the suggestion with the help o
>>>> 
>>>> 
>> 
>> 

Reply via email to