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