Hi Jun, Thanks for your quick reply.
So you will use the pom.xml different from the official one, and it makes no difference for end users. Actually, there are some differences. For example, if I use the artifact I packaged with 'mvn clean install’, there will be a log4j transitive dependency. mvn dependency:tree -Dverbose -Dincludes=:log4j INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ cdubbo-client --- [INFO] some-of-our-project:jar:0.1.2-SNAPSHOT [INFO] \- com.alibaba:dubbo:jar:2.5.10-customized-1:compile [INFO] \- log4j:log4j:jar:1.2.16:compile However, there is no such log4j transitive dependency if I reference the official released artifact. Because the pom file under dubbo-maven folder defines the scope as provided. https://github.com/apache/incubator-dubbo/blob/2.5.x/dubbo-maven/pom.xml#L172 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.16</version> <scope>provided</scope> </dependency> I understand 'The release process to central repository for 2.5.x or above is a tricky one’, or I don’t need to ask you guys for it… So I would still appreciate it if you could share any guidance to me so that I could continue the internal release first. Also, since patch #1746<https://github.com/apache/incubator-dubbo/pull/1746> is merged to 2.5.x branch, I could also wait the next 2.5.x release (if not months later) Thanks! Jason From: Wang Xin Date: Thursday, 10 May 2018 at 08:46 To: "[email protected]<mailto:[email protected]>" Cc: Jason Subject: Re: How to package dubbo.jar correctly? Hi,Jun, I have recorded this question:“ What's the difference between version 2.6.x and version 2.5.x ?” in FAQ page https://github.com/apache/incubator-dubbo/wiki/FAQ You can add more details in it. Xin Wang [email protected]<mailto:[email protected]> 在 2018年5月10日,上午8:07,Jun Liu <[email protected]<mailto:[email protected]>> 写道: Hi song, However, the pom file in official released artifact is https://github.com/apache/incubator-dubbo/blob/2.5.x/dubbo-maven/pom.xml These 2 pom files are quite different, especially in the dependency scope part. You can package to generate an all-in-one dubbo jar, and the only difference lay in the pom.xml file, right? I think you have used the right way packing dubbo, take a closer look, the transitive dependencies passed by these two pom files are the same. So you will use the pom.xml different from the official one, and it makes no difference for end users. So I wonder what is the normal release process for dubbo.jar? Is there some configuration or step I missed? The release process to central repository for 2.5.x or above is a tricky one, that’s also one of the reasons that we changed the pom structure of dubbo project in 2.6.x. As mentioned above, use 'mvn clean install -DskipTests=true’ directly, and ignore the 'dubbo-maven/pom.xml’, a pom file only works for central maven repository. On 8 May 2018, at 10:44 AM, ss宋顺 <[email protected]<mailto:[email protected]>> wrote: Hi there, I have a patch<https://github.com/apache/incubator-dubbo/pull/1746> that needs to be applied to our organization first. So I use the normal way - 'mvn clean install -DskipTests=true' to package the dubbo.jar (based on branch 2.5.x). However, the pom file for the generated artifact is different from the one in the official released artifact. Specifically, the pom file in my generated artifact is https://github.com/apache/incubator-dubbo/blob/2.5.x/dubbo/pom.xml However, the pom file in official released artifact is https://github.com/apache/incubator-dubbo/blob/2.5.x/dubbo-maven/pom.xml These 2 pom files are quite different, especially in the dependency scope part. So I wonder what is the normal release process for dubbo.jar? Is there some configuration or step I missed? Looking forward to your guidance! Thanks! Jason
