You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by li...@apache.org on 2022/06/14 06:09:42 UTC

[dubbo] branch 3.0 updated: The compiler version is the same as the trunk version (#10144)

This is an automated email from the ASF dual-hosted git repository.

liujun pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git


The following commit(s) were added to refs/heads/3.0 by this push:
     new c9b6e85d03 The compiler version is the same as the trunk version (#10144)
c9b6e85d03 is described below

commit c9b6e85d0362fe3bfb97a5f3097d0e2880359f9d
Author: huazhongming <cr...@gmail.com>
AuthorDate: Tue Jun 14 14:09:14 2022 +0800

    The compiler version is the same as the trunk version (#10144)
---
 .github/workflows/build-and-test-3.yml             |   2 +-
 compiler/pom.xml                                   | 259 ---------------------
 compiler/src/main/resources/Dubbo3Stub.mustache    |  16 --
 dubbo-compiler/pom.xml                             | 119 ++++++++++
 .../org/apache/dubbo/gen/AbstractGenerator.java    |   0
 .../apache/dubbo/gen/dubbo/Dubbo3Generator.java    |   0
 .../org/apache/dubbo/gen/dubbo/DubboGenerator.java |   0
 .../apache/dubbo/gen/grpc/DubboGrpcGenerator.java  |   0
 .../grpc/reactive/ReactorDubboGrpcGenerator.java   |   0
 .../gen/grpc/reactive/RxDubboGrpcGenerator.java    |   0
 .../dubbo/gen/tri/Dubbo3TripleGenerator.java       |   0
 .../main/resources/Dubbo3InterfaceStub.mustache    |  17 ++
 .../src/main/resources/Dubbo3Stub.mustache         |  33 +++
 .../resources/Dubbo3TripleInterfaceStub.mustache   |  17 ++
 .../src/main/resources/Dubbo3TripleStub.mustache   |  17 ++
 .../src/main/resources/DubboGrpcStub.mustache      |  17 ++
 .../src/main/resources/DubboStub.mustache          |  17 ++
 .../src/main/resources/DubboStub3Single.mustache   |  17 ++
 .../main/resources/ReactorDubboGrpcStub.mustache   |  17 ++
 .../src/main/resources/RxDubboGrpcStub.mustache    |  17 ++
 dubbo-dependencies-bom/pom.xml                     |  19 +-
 dubbo-distribution/dubbo-all/pom.xml               |   1 +
 dubbo-rpc/dubbo-rpc-triple/pom.xml                 |   2 +-
 pom.xml                                            |   1 +
 24 files changed, 310 insertions(+), 278 deletions(-)

diff --git a/.github/workflows/build-and-test-3.yml b/.github/workflows/build-and-test-3.yml
index b269cbb4f3..3a9b654ad8 100644
--- a/.github/workflows/build-and-test-3.yml
+++ b/.github/workflows/build-and-test-3.yml
@@ -210,7 +210,7 @@ jobs:
       - name: "Init Candidate Versions"
         run: |
           DUBBO_VERSION="${{needs.build-source.outputs.version}}"
-          CANDIDATE_VERSIONS="dubbo.version:$DUBBO_VERSION;$CANDIDATE_VERSIONS"
+          CANDIDATE_VERSIONS="dubbo.version:$DUBBO_VERSION;compiler.version:$DUBBO_VERSION;$CANDIDATE_VERSIONS;dubbo.compiler.version:$DUBBO_VERSION"
           echo "CANDIDATE_VERSIONS=$CANDIDATE_VERSIONS" >> $GITHUB_ENV
       - name: "Build test image"
         run: |
diff --git a/compiler/pom.xml b/compiler/pom.xml
deleted file mode 100644
index a00856a529..0000000000
--- a/compiler/pom.xml
+++ /dev/null
@@ -1,259 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.apache</groupId>
-        <artifactId>apache</artifactId>
-        <version>21</version>
-    </parent>
-
-    <groupId>org.apache.dubbo</groupId>
-    <artifactId>dubbo-compiler</artifactId>
-    <version>0.0.4.1-SNAPSHOT</version>
-
-    <packaging>jar</packaging>
-
-    <properties>
-        <grpc.verison>1.44.0</grpc.verison>
-        <jprotoc.version>1.2.1</jprotoc.version>
-        <maven_compiler_version>3.6.0</maven_compiler_version>
-        <maven_jar_version>3.0.2</maven_jar_version>
-        <maven_source_version>3.0.1</maven_source_version>
-        <maven_javadoc_version>3.0.1</maven_javadoc_version>
-        <java_source_version>1.8</java_source_version>
-        <java_target_version>1.8</java_target_version>
-        <file_encoding>UTF-8</file_encoding>
-    </properties>
-
-    <dependencies>
-        <dependency>
-            <groupId>io.grpc</groupId>
-            <artifactId>grpc-core</artifactId>
-            <version>${grpc.verison}</version>
-        </dependency>
-        <dependency>
-            <groupId>io.grpc</groupId>
-            <artifactId>grpc-stub</artifactId>
-            <version>${grpc.verison}</version>
-        </dependency>
-        <dependency>
-            <groupId>io.grpc</groupId>
-            <artifactId>grpc-protobuf</artifactId>
-            <version>${grpc.verison}</version>
-        </dependency>
-        <dependency>
-            <groupId>io.grpc</groupId>
-            <artifactId>grpc-context</artifactId>
-            <version>${grpc.verison}</version>
-        </dependency>
-        <dependency>
-            <groupId>com.salesforce.servicelibs</groupId>
-            <artifactId>grpc-contrib</artifactId>
-            <version>0.8.1</version>
-        </dependency>
-        <dependency>
-            <groupId>com.salesforce.servicelibs</groupId>
-            <artifactId>jprotoc</artifactId>
-            <version>${jprotoc.version}</version>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-compiler-plugin</artifactId>
-                <version>${maven_compiler_version}</version>
-                <configuration>
-                    <compilerArgument>-proc:none</compilerArgument>
-                    <fork>true</fork>
-                    <source>${java_source_version}</source>
-                    <target>${java_target_version}</target>
-                    <encoding>${file_encoding}</encoding>
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-jar-plugin</artifactId>
-                <version>${maven_jar_version}</version>
-                <configuration>
-                    <archive>
-                        <manifest>
-                            <addClasspath>true</addClasspath>
-                            <mainClass>org.apache.dubbo.gen.grpc.DubboGrpcGenerator</mainClass>
-                        </manifest>
-                    </archive>
-                </configuration>
-            </plugin>
-
-            <!-- Optional, used to build directly executable packages (without using 'java -jar'),
-            for example 'artifactId-1.0.0-osx-x86_64.exe', 'artifactId-1.0.0-osx-x86_64.exe' -->
-            <plugin>
-                <groupId>com.salesforce.servicelibs</groupId>
-                <artifactId>canteen-maven-plugin</artifactId>
-                <version>1.0.0</version>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>bootstrap</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-
-    <profiles>
-        <profile>
-            <id>release</id>
-            <properties>
-                <log4j2_version>2.17.2</log4j2_version>
-            </properties>
-            <build>
-                <plugins>
-                    <plugin>
-                        <artifactId>maven-source-plugin</artifactId>
-                        <version>${maven_source_version}</version>
-                        <executions>
-                            <execution>
-                                <id>attach-sources</id>
-                                <goals>
-                                    <goal>jar</goal>
-                                </goals>
-                            </execution>
-                        </executions>
-                    </plugin>
-                    <plugin>
-                        <artifactId>maven-javadoc-plugin</artifactId>
-                        <version>${maven_javadoc_version}</version>
-                        <executions>
-                            <execution>
-                                <id>attach-javadoc</id>
-                                <goals>
-                                    <goal>jar</goal>
-                                    <goal>aggregate</goal>
-                                </goals>
-                                <configuration>
-                                    <additionalDependencies>
-                                        <additionalDependency>
-                                            <groupId>org.apache.logging.log4j</groupId>
-                                            <artifactId>log4j-api</artifactId>
-                                            <version>${log4j2_version}</version>
-                                        </additionalDependency>
-                                        <additionalDependency>
-                                            <groupId>org.apache.logging.log4j</groupId>
-                                            <artifactId>log4j-core</artifactId>
-                                            <version>${log4j2_version}</version>
-                                        </additionalDependency>
-                                    </additionalDependencies>
-                                </configuration>
-                            </execution>
-                        </executions>
-                        <configuration>
-                            <show>public</show>
-                            <charset>UTF-8</charset>
-                            <encoding>UTF-8</encoding>
-                            <docencoding>UTF-8</docencoding>
-                            <links>
-                                <link>http://docs.oracle.com/javase/8/docs/api</link>
-                            </links>
-                            <doclint>none</doclint>
-                            <excludePackageNames>
-                                org.apache.dubbo.demo,org.apache.dubbo.demo.*
-                            </excludePackageNames>
-                            <doctitle>Apache Dubbo ${project.version} API</doctitle>
-                            <windowtitle>Apache Dubbo ${project.version} API</windowtitle>
-                        </configuration>
-                    </plugin>
-                    <plugin>
-                        <groupId>org.apache.maven.plugins</groupId>
-                        <artifactId>maven-gpg-plugin</artifactId>
-                        <executions>
-                            <execution>
-                                <phase>verify</phase>
-                                <goals>
-                                    <goal>sign</goal>
-                                </goals>
-                            </execution>
-                        </executions>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-    </profiles>
-
-    <name>dubbo-compiler</name>
-    <description>Dubbo customized RPC stub compiler.</description>
-    <url>https://github.com/apache/dubbo</url>
-    <inceptionYear>2011</inceptionYear>
-    <licenses>
-        <license>
-            <name>Apache License, Version 2.0</name>
-            <url>http://www.apache.org/licenses/LICENSE-2.0</url>
-            <distribution>repo</distribution>
-        </license>
-    </licenses>
-
-    <scm>
-        <url>https://github.com/apache/dubbo</url>
-        <connection>scm:git:https://github.com/apache/dubbo.git</connection>
-        <developerConnection>scm:git:https://github.com/apache/dubbo.git</developerConnection>
-        <tag>HEAD</tag>
-    </scm>
-    <mailingLists>
-        <mailingList>
-            <name>Development List</name>
-            <subscribe>dev-subscribe@dubbo.apache.org</subscribe>
-            <unsubscribe>dev-unsubscribe@dubbo.apache.org</unsubscribe>
-            <post>dev@dubbo.apache.org</post>
-        </mailingList>
-        <mailingList>
-            <name>Commits List</name>
-            <subscribe>commits-subscribe@dubbo.apache.org</subscribe>
-            <unsubscribe>commits-unsubscribe@dubbo.apache.org</unsubscribe>
-            <post>commits@dubbo.apache.org</post>
-        </mailingList>
-        <mailingList>
-            <name>Issues List</name>
-            <subscribe>issues-subscribe@dubbo.apache.org</subscribe>
-            <unsubscribe>issues-unsubscribe@dubbo.apache.org</unsubscribe>
-            <post>issues@dubbo.apache.org</post>
-        </mailingList>
-    </mailingLists>
-    <developers>
-        <developer>
-            <id>dubbo.io</id>
-            <name>The Dubbo Project Contributors</name>
-            <email>dev-subscribe@dubbo.apache.org</email>
-            <url>http://dubbo.apache.org/</url>
-        </developer>
-    </developers>
-
-    <organization>
-        <name>The Apache Software Foundation</name>
-        <url>http://www.apache.org/</url>
-    </organization>
-
-    <issueManagement>
-        <system>Github Issues</system>
-        <url>https://github.com/apache/dubbo/issues</url>
-    </issueManagement>
-</project>
diff --git a/compiler/src/main/resources/Dubbo3Stub.mustache b/compiler/src/main/resources/Dubbo3Stub.mustache
deleted file mode 100644
index 6fa7938481..0000000000
--- a/compiler/src/main/resources/Dubbo3Stub.mustache
+++ /dev/null
@@ -1,16 +0,0 @@
-{{#packageName}}
-    package {{packageName}};
-{{/packageName}}
-
-{{#deprecated}}
-    @java.lang.Deprecated
-{{/deprecated}}
-public final class {{className}} {
-
-public static boolean init() {
-    return true;
-}
-
-private {{className}}() {}
-
-}
diff --git a/dubbo-compiler/pom.xml b/dubbo-compiler/pom.xml
new file mode 100644
index 0000000000..955e27938e
--- /dev/null
+++ b/dubbo-compiler/pom.xml
@@ -0,0 +1,119 @@
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.dubbo</groupId>
+        <artifactId>dubbo-parent</artifactId>
+        <version>${revision}</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+    <packaging>jar</packaging>
+    <artifactId>dubbo-compiler</artifactId>
+
+    <name>${project.artifactId}</name>
+    <description>Dubbo customized RPC stub compiler.</description>
+
+    <properties>
+        <maven_compiler_version>3.6.0</maven_compiler_version>
+        <maven_jar_version>3.0.2</maven_jar_version>
+        <maven_source_version>3.0.1</maven_source_version>
+        <maven_javadoc_version>3.0.1</maven_javadoc_version>
+        <java_source_version>1.8</java_source_version>
+        <java_target_version>1.8</java_target_version>
+        <file_encoding>UTF-8</file_encoding>
+
+        <skip_maven_deploy>false</skip_maven_deploy>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.salesforce.servicelibs</groupId>
+            <artifactId>jprotoc</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.grpc</groupId>
+            <artifactId>grpc-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.grpc</groupId>
+            <artifactId>grpc-stub</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.grpc</groupId>
+            <artifactId>grpc-protobuf</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.grpc</groupId>
+            <artifactId>grpc-context</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.salesforce.servicelibs</groupId>
+            <artifactId>grpc-contrib</artifactId>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>${maven_compiler_version}</version>
+                <configuration>
+                    <compilerArgument>-proc:none</compilerArgument>
+                    <fork>true</fork>
+                    <source>${java_source_version}</source>
+                    <target>${java_target_version}</target>
+                    <encoding>${file_encoding}</encoding>
+                </configuration>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <version>${maven_jar_version}</version>
+                <configuration>
+                    <archive>
+                        <manifest>
+                            <addClasspath>true</addClasspath>
+                            <mainClass>org.apache.dubbo.gen.grpc.DubboGrpcGenerator</mainClass>
+                        </manifest>
+                    </archive>
+                </configuration>
+            </plugin>
+
+            <!-- Optional, used to build directly executable packages (without using 'java -jar'),
+            for example 'artifactId-1.0.0-osx-x86_64.exe', 'artifactId-1.0.0-osx-x86_64.exe' -->
+            <plugin>
+                <groupId>com.salesforce.servicelibs</groupId>
+                <artifactId>canteen-maven-plugin</artifactId>
+                <version>1.0.0</version>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>bootstrap</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/AbstractGenerator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/AbstractGenerator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/AbstractGenerator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/AbstractGenerator.java
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/dubbo/Dubbo3Generator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/dubbo/Dubbo3Generator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/dubbo/Dubbo3Generator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/dubbo/Dubbo3Generator.java
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/dubbo/DubboGenerator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/dubbo/DubboGenerator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/dubbo/DubboGenerator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/dubbo/DubboGenerator.java
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/grpc/DubboGrpcGenerator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/grpc/DubboGrpcGenerator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/grpc/DubboGrpcGenerator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/grpc/DubboGrpcGenerator.java
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/ReactorDubboGrpcGenerator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/ReactorDubboGrpcGenerator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/ReactorDubboGrpcGenerator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/ReactorDubboGrpcGenerator.java
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/RxDubboGrpcGenerator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/RxDubboGrpcGenerator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/RxDubboGrpcGenerator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/grpc/reactive/RxDubboGrpcGenerator.java
diff --git a/compiler/src/main/java/org/apache/dubbo/gen/tri/Dubbo3TripleGenerator.java b/dubbo-compiler/src/main/java/org/apache/dubbo/gen/tri/Dubbo3TripleGenerator.java
similarity index 100%
rename from compiler/src/main/java/org/apache/dubbo/gen/tri/Dubbo3TripleGenerator.java
rename to dubbo-compiler/src/main/java/org/apache/dubbo/gen/tri/Dubbo3TripleGenerator.java
diff --git a/compiler/src/main/resources/Dubbo3InterfaceStub.mustache b/dubbo-compiler/src/main/resources/Dubbo3InterfaceStub.mustache
similarity index 67%
rename from compiler/src/main/resources/Dubbo3InterfaceStub.mustache
rename to dubbo-compiler/src/main/resources/Dubbo3InterfaceStub.mustache
index 824fff7431..f97b7183b0 100644
--- a/compiler/src/main/resources/Dubbo3InterfaceStub.mustache
+++ b/dubbo-compiler/src/main/resources/Dubbo3InterfaceStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
 package {{packageName}};
 {{/packageName}}
diff --git a/dubbo-compiler/src/main/resources/Dubbo3Stub.mustache b/dubbo-compiler/src/main/resources/Dubbo3Stub.mustache
new file mode 100644
index 0000000000..684b19ca83
--- /dev/null
+++ b/dubbo-compiler/src/main/resources/Dubbo3Stub.mustache
@@ -0,0 +1,33 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+{{#packageName}}
+    package {{packageName}};
+{{/packageName}}
+
+{{#deprecated}}
+    @java.lang.Deprecated
+{{/deprecated}}
+public final class {{className}} {
+
+public static boolean init() {
+    return true;
+}
+
+private {{className}}() {}
+
+}
diff --git a/compiler/src/main/resources/Dubbo3TripleInterfaceStub.mustache b/dubbo-compiler/src/main/resources/Dubbo3TripleInterfaceStub.mustache
similarity index 72%
rename from compiler/src/main/resources/Dubbo3TripleInterfaceStub.mustache
rename to dubbo-compiler/src/main/resources/Dubbo3TripleInterfaceStub.mustache
index 9cc2e300fa..6788bfb653 100644
--- a/compiler/src/main/resources/Dubbo3TripleInterfaceStub.mustache
+++ b/dubbo-compiler/src/main/resources/Dubbo3TripleInterfaceStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/compiler/src/main/resources/Dubbo3TripleStub.mustache b/dubbo-compiler/src/main/resources/Dubbo3TripleStub.mustache
similarity index 92%
rename from compiler/src/main/resources/Dubbo3TripleStub.mustache
rename to dubbo-compiler/src/main/resources/Dubbo3TripleStub.mustache
index 3d2212bc9c..d6f6fa9fc2 100644
--- a/compiler/src/main/resources/Dubbo3TripleStub.mustache
+++ b/dubbo-compiler/src/main/resources/Dubbo3TripleStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/compiler/src/main/resources/DubboGrpcStub.mustache b/dubbo-compiler/src/main/resources/DubboGrpcStub.mustache
similarity index 93%
rename from compiler/src/main/resources/DubboGrpcStub.mustache
rename to dubbo-compiler/src/main/resources/DubboGrpcStub.mustache
index 703ce55bb1..9677ae0c31 100644
--- a/compiler/src/main/resources/DubboGrpcStub.mustache
+++ b/dubbo-compiler/src/main/resources/DubboGrpcStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/compiler/src/main/resources/DubboStub.mustache b/dubbo-compiler/src/main/resources/DubboStub.mustache
similarity index 58%
rename from compiler/src/main/resources/DubboStub.mustache
rename to dubbo-compiler/src/main/resources/DubboStub.mustache
index da6adf70ec..c45995587c 100644
--- a/compiler/src/main/resources/DubboStub.mustache
+++ b/dubbo-compiler/src/main/resources/DubboStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/compiler/src/main/resources/DubboStub3Single.mustache b/dubbo-compiler/src/main/resources/DubboStub3Single.mustache
similarity index 72%
rename from compiler/src/main/resources/DubboStub3Single.mustache
rename to dubbo-compiler/src/main/resources/DubboStub3Single.mustache
index 8fcc0907c5..25a45e86d7 100644
--- a/compiler/src/main/resources/DubboStub3Single.mustache
+++ b/dubbo-compiler/src/main/resources/DubboStub3Single.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/compiler/src/main/resources/ReactorDubboGrpcStub.mustache b/dubbo-compiler/src/main/resources/ReactorDubboGrpcStub.mustache
similarity index 90%
rename from compiler/src/main/resources/ReactorDubboGrpcStub.mustache
rename to dubbo-compiler/src/main/resources/ReactorDubboGrpcStub.mustache
index d8d3fba9b7..07451eb468 100644
--- a/compiler/src/main/resources/ReactorDubboGrpcStub.mustache
+++ b/dubbo-compiler/src/main/resources/ReactorDubboGrpcStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/compiler/src/main/resources/RxDubboGrpcStub.mustache b/dubbo-compiler/src/main/resources/RxDubboGrpcStub.mustache
similarity index 92%
rename from compiler/src/main/resources/RxDubboGrpcStub.mustache
rename to dubbo-compiler/src/main/resources/RxDubboGrpcStub.mustache
index 6f81ce842b..3f49cc493c 100644
--- a/compiler/src/main/resources/RxDubboGrpcStub.mustache
+++ b/dubbo-compiler/src/main/resources/RxDubboGrpcStub.mustache
@@ -1,3 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 {{#packageName}}
     package {{packageName}};
 {{/packageName}}
diff --git a/dubbo-dependencies-bom/pom.xml b/dubbo-dependencies-bom/pom.xml
index b8397ef757..ffb3fcc6c5 100644
--- a/dubbo-dependencies-bom/pom.xml
+++ b/dubbo-dependencies-bom/pom.xml
@@ -134,7 +134,9 @@
         <tomcat_embed_version>8.5.69</tomcat_embed_version>
         <jetcd_version>0.5.3</jetcd_version>
         <nacos_version>2.1.0</nacos_version>
-        <grpc.version>1.31.1</grpc.version>
+        <grpc.version>1.44.0</grpc.version>
+        <grpc_contrib_verdion>0.8.1</grpc_contrib_verdion>
+        <jprotoc_version>1.2.1</jprotoc_version>
         <!-- Log libs -->
         <slf4j_version>1.7.25</slf4j_version>
         <jcl_version>1.2</jcl_version>
@@ -726,6 +728,21 @@
                 <artifactId>grpc-grpclb</artifactId>
                 <version>${grpc.version}</version>
             </dependency>
+            <dependency>
+                <groupId>io.grpc</groupId>
+                <artifactId>grpc-context</artifactId>
+                <version>${grpc.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.salesforce.servicelibs</groupId>
+                <artifactId>grpc-contrib</artifactId>
+                <version>${grpc_contrib_verdion}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.salesforce.servicelibs</groupId>
+                <artifactId>jprotoc</artifactId>
+                <version>${jprotoc_version}</version>
+            </dependency>
             <dependency>
                 <groupId>io.fabric8</groupId>
                 <artifactId>kubernetes-client</artifactId>
diff --git a/dubbo-distribution/dubbo-all/pom.xml b/dubbo-distribution/dubbo-all/pom.xml
index 4fa8dce7e7..bd5f9eaec8 100644
--- a/dubbo-distribution/dubbo-all/pom.xml
+++ b/dubbo-distribution/dubbo-all/pom.xml
@@ -431,6 +431,7 @@
                                     <include>org.apache.dubbo:dubbo-serialization-hessian2</include>
                                     <include>org.apache.dubbo:dubbo-serialization-jdk</include>
                                     <include>org.apache.dubbo:dubbo-serialization</include>
+                                    <include>org.apache.dubbo:dubbo-compiler</include>
                                 </includes>
                             </artifactSet>
                             <transformers>
diff --git a/dubbo-rpc/dubbo-rpc-triple/pom.xml b/dubbo-rpc/dubbo-rpc-triple/pom.xml
index 1c5285e459..f2b08cd7df 100644
--- a/dubbo-rpc/dubbo-rpc-triple/pom.xml
+++ b/dubbo-rpc/dubbo-rpc-triple/pom.xml
@@ -102,7 +102,7 @@
                             <id>dubbo</id>
                             <groupId>org.apache.dubbo</groupId>
                             <artifactId>dubbo-compiler</artifactId>
-                            <version>${dubbo.compiler.version}</version>
+                            <version>${project.parent.version}</version>
                             <mainClass>org.apache.dubbo.gen.tri.Dubbo3TripleGenerator</mainClass>
                         </protocPlugin>
                     </protocPlugins>
diff --git a/pom.xml b/pom.xml
index 893f490f82..24c858334f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -135,6 +135,7 @@
     <modules>
         <module>dubbo-common</module>
         <module>dubbo-container</module>
+        <module>dubbo-compiler</module>
         <module>dubbo-remoting</module>
         <module>dubbo-rpc</module>
         <module>dubbo-cluster</module>