You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2020/02/18 06:53:38 UTC

[servicecomb-samples] branch master updated: [SCB-1775] update servicecomb-samples to using 2.0.0

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

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-samples.git


The following commit(s) were added to refs/heads/master by this push:
     new dffeb06  [SCB-1775] update servicecomb-samples to using 2.0.0
dffeb06 is described below

commit dffeb06946610d81ea5116dc492a236ec3d7470e
Author: liubao <bi...@qq.com>
AuthorDate: Tue Feb 18 14:39:01 2020 +0800

    [SCB-1775] update servicecomb-samples to using 2.0.0
---
 java-chassis-samples/apm-agent/pom.xml             |   4 +-
 java-chassis-samples/auth-sample/README.md         | 102 ++++++++++-----------
 .../auth-sample/auth-consumer/pom.xml              |   2 +-
 .../auth-sample/auth-provider/pom.xml              |   2 +-
 java-chassis-samples/auth-sample/pom.xml           |   2 +-
 java-chassis-samples/codefirst-sample/README.md    |  41 ++++-----
 .../codefirst-sample/codefirst-consumer/pom.xml    |   2 +-
 .../codefirst-sample/codefirst-provider/pom.xml    |   2 +-
 java-chassis-samples/codefirst-sample/pom.xml      |   2 +-
 java-chassis-samples/common-schema/pom.xml         |   2 +-
 .../config-apollo-sample/README.md                 |  13 ++-
 java-chassis-samples/config-apollo-sample/pom.xml  |   2 +-
 .../custom-handler-sample/README.md                |  30 +++---
 .../custom-handler-consumer/pom.xml                |   2 +-
 .../custom-handler-provider/pom.xml                |   2 +-
 java-chassis-samples/custom-handler-sample/pom.xml |   2 +-
 java-chassis-samples/jaxrs-sample/README.md        |  28 +++---
 .../jaxrs-sample/jaxrs-consumer/pom.xml            |   2 +-
 .../jaxrs-sample/jaxrs-provider/pom.xml            |   2 +-
 java-chassis-samples/jaxrs-sample/pom.xml          |   2 +-
 .../local-service-registry/README.md               |   2 +-
 .../local-registry-client/pom.xml                  |   2 +-
 .../local-registry-server/pom.xml                  |   2 +-
 .../local-service-registry/pom.xml                 |   2 +-
 .../metrics-extend-healthcheck/README.md           |   3 +-
 .../metrics-extend-healthcheck/pom.xml             |   2 +-
 .../metrics-write-file-sample/README.md            |  23 +----
 .../metrics-write-file/pom.xml                     |   2 +-
 .../metrics-write-file-sample/pom.xml              |  12 +--
 java-chassis-samples/pojo-sample/README.md         |  30 +++---
 .../pojo-sample/pojo-consumer/pom.xml              |   2 +-
 .../pojo-sample/pojo-provider/pom.xml              |   2 +-
 java-chassis-samples/pojo-sample/pom.xml           |   2 +-
 java-chassis-samples/pom.xml                       |   2 +-
 java-chassis-samples/springmvc-sample/README.md    |  32 +++----
 java-chassis-samples/springmvc-sample/pom.xml      |   2 +-
 .../springmvc-sample/springmvc-consumer/pom.xml    |   2 +-
 .../springmvc/consumer/SpringmvcBasicClient.java   |   8 +-
 .../springmvc/consumer/SpringmvcBasicService.java  |   2 +-
 .../springmvc/consumer/SpringmvcHelloClient.java   |   1 +
 .../springmvc-sample/springmvc-provider/pom.xml    |   2 +-
 java-chassis-samples/trust-sample/README.md        |   8 +-
 java-chassis-samples/trust-sample/customer/pom.xml |   2 +-
 java-chassis-samples/trust-sample/hacker/pom.xml   |   2 +-
 java-chassis-samples/trust-sample/pom.xml          |   2 +-
 java-chassis-samples/trust-sample/store/pom.xml    |   2 +-
 java-chassis-samples/use-log4j2-sample/pom.xml     |   2 +-
 porter_lightweight/api/common/endpoint/pom.xml     |   2 +-
 porter_lightweight/api/common/pom.xml              |   2 +-
 porter_lightweight/api/common/service/pom.xml      |   2 +-
 .../api/file-service/endpoint/pom.xml              |   2 +-
 porter_lightweight/api/file-service/pom.xml        |   2 +-
 .../api/file-service/service/pom.xml               |   2 +-
 porter_lightweight/api/pom.xml                     |   2 +-
 .../api/user-service/endpoint/pom.xml              |   2 +-
 porter_lightweight/api/user-service/pom.xml        |   2 +-
 .../api/user-service/service/pom.xml               |   2 +-
 porter_lightweight/file-service/pom.xml            |   2 +-
 porter_lightweight/gateway-service/pom.xml         |   2 +-
 porter_lightweight/pom.xml                         |   2 +-
 porter_lightweight/user-service/pom.xml            |   2 +-
 porter_springboot/api/common/endpoint/pom.xml      |   2 +-
 porter_springboot/api/common/pom.xml               |   2 +-
 porter_springboot/api/common/service/pom.xml       |   2 +-
 .../api/file-service/endpoint/pom.xml              |   2 +-
 porter_springboot/api/file-service/pom.xml         |   2 +-
 porter_springboot/api/file-service/service/pom.xml |   2 +-
 porter_springboot/api/pom.xml                      |   2 +-
 .../api/user-service/endpoint/pom.xml              |   2 +-
 porter_springboot/api/user-service/pom.xml         |   2 +-
 porter_springboot/api/user-service/service/pom.xml |   2 +-
 porter_springboot/file-service/pom.xml             |   2 +-
 porter_springboot/gateway-service/pom.xml          |   2 +-
 porter_springboot/pom.xml                          |   2 +-
 porter_springboot/user-service/pom.xml             |   2 +-
 75 files changed, 209 insertions(+), 248 deletions(-)

diff --git a/java-chassis-samples/apm-agent/pom.xml b/java-chassis-samples/apm-agent/pom.xml
index 3e16a6a..306deee 100644
--- a/java-chassis-samples/apm-agent/pom.xml
+++ b/java-chassis-samples/apm-agent/pom.xml
@@ -22,14 +22,14 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <modelVersion>4.0.0</modelVersion>
 
   <groupId>org.apache.servicecomb.samples</groupId>
   <artifactId>apm-agent</artifactId>
-  <version>2.0.0-SNAPSHOT</version>
+  <version>2.0.0</version>
   <name>Java Chassis::Samples::apm-agent</name>
 
   <properties>
diff --git a/java-chassis-samples/auth-sample/README.md b/java-chassis-samples/auth-sample/README.md
index 8dde9f3..9345b6d 100644
--- a/java-chassis-samples/auth-sample/README.md
+++ b/java-chassis-samples/auth-sample/README.md
@@ -6,94 +6,90 @@ To make sure the security between the interfaces of services, users can enable `
 
 * Add dependence in pom.xml file:
 
-  ```xml
-  <dependency>
-        <groupId>org.apache.servicecomb</groupId>
-        <artifactId>handler-publickey-auth</artifactId>
-   </dependency>
-  ```
+```xml
+<dependency>
+    <groupId>org.apache.servicecomb</groupId>
+    <artifactId>handler-publickey-auth</artifactId>
+</dependency>
+```
 
 * Add handler chain in microservice.yaml:
 
-  ```yaml
-  cse:
-    # other configurations omitted
-    handler:
-      chain:
-        Consumer:
-          default: auth-consumer
-  ```
+```yaml
+servicecomb:
+  handler:
+    chain:
+      Consumer:
+        default: auth-consumer
+```
 
 ## Provider Service
 
 * Add dependence in pom.xml file:
 
-  ```xml
-  <dependency>
-        <groupId>org.apache.servicecomb</groupId>
-        <artifactId>handler-publickey-auth</artifactId>
-   </dependency>
-  ```
+```xml
+<dependency>
+    <groupId>org.apache.servicecomb</groupId>
+    <artifactId>handler-publickey-auth</artifactId>
+</dependency>
+```
 
 * Add handler chain in microservice.yaml:
 
-  ```yaml
-  cse:
-    # other configurations omitted
-    handler:
-      chain:
-        Consumer:
-          default: auth-provider
-  ```
+```yaml
+servicecomb:
+  handler:
+    chain:
+      Consumer:
+        default: auth-provider
+```
 
 ## Sample Quick Start
 
 Auth sample use `RestTemplate` to present RSA communication between provider and consumer.
 
-1. Start the ServiceComb/Service Center
+* Start the ServiceComb/Service Center
 
-   - [how to start the service center](http://servicecomb.apache.org/users/setup-environment/#)
+   - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
    - make sure service center address is configured correctly in `microservice.yaml` file
 
-   ```yaml
-   cse:
-     service:
-       registry:
-         address: http://127.0.0.1:30100		#service center address
-   ```
+```yaml
+servicecomb:
+ service:
+   registry:
+     address: http://127.0.0.1:30100		#service center address
+```
 
-2. Start the auth-provider service
+* Start the auth-provider service
 
    - Start provider service by maven
 
-     Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `AuthProviderMain`.
+     Compile the source code, and use `mvn exec` to execute the main class `AuthProviderMain`.
 
-     ```bash
-     cd servicecomb-java-chassis/
-     mvn clean install -Psamples -DskipTests			#only need to install at first time.
-     cd samples/auth-sample/auth-provider/
-     mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.auth.provider.AuthProviderMain"
-     ```
+ ```bash
+mvn clean install
+cd auth-sample/auth-provider/
+mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.auth.provider.AuthProviderMain"
+ ```
 
    - Start provider service by IDE
 
-     Import the project by InteliJ IDEA or Eclipse, add sample module to pom.xml file in root module `servicecomb-java-chassis/pom.xml`, and add `<module>samples</module>` to `<modules></modules>` block, Then find `main` function `AuthProviderMain` of provider service and `RUN` it like any other Java program.
+     Import the project by InteliJ IDEA or Eclipse, then find `main` function `AuthProviderMain` of provider service and `RUN` it like any other Java program.
 
-3. Start the auth-consumer service
+* Start the auth-consumer service
 
    Just like how to start auth-provider service. But the main class of auth-consumer service is `AuthConsumerMain`. 
 
-   ```bash
-   cd samples/auth-sample/auth-consumer/
-   mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.auth.consumer.AuthConsumerMain"
-   ```
+```bash
+cd auth-sample/auth-consumer/
+mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.auth.consumer.AuthConsumerMain"
+```
 
-4. How to verify
+* How to verify
    On the producer side, the output should contain the following stuffs if the producer starts up successfully:
    1. *'swagger: 2.0 info: version: 1.0.0 ...'* means the producer generated swagger contracts
    2. *'rest listen success. address=0.0.0.0:8080'* means the rest endpoint is listening on port 8080
-   3. *'Register microservice instance success'* means the producer has registered successfully to service center
    
    On the consumer side, you can see the following outputs if the consumer can invoke the producer:
    1. *'Hello Authenticate'* means the consumer calls sayhi with name=Authenticate successfully
-   2. *'Hello person ServiceComb/Authenticate'* means the consumer calls sayhello successfully
\ No newline at end of file
+   2. *'Hello person ServiceComb/Authenticate'* means the consumer calls sayhello successfully
diff --git a/java-chassis-samples/auth-sample/auth-consumer/pom.xml b/java-chassis-samples/auth-sample/auth-consumer/pom.xml
index 4384bcb..70ff8cc 100644
--- a/java-chassis-samples/auth-sample/auth-consumer/pom.xml
+++ b/java-chassis-samples/auth-sample/auth-consumer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>auth-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>auth-consumer</artifactId>
   <name>Java Chassis::Samples::Auth::Consumer</name>
diff --git a/java-chassis-samples/auth-sample/auth-provider/pom.xml b/java-chassis-samples/auth-sample/auth-provider/pom.xml
index 493245b..64de860 100644
--- a/java-chassis-samples/auth-sample/auth-provider/pom.xml
+++ b/java-chassis-samples/auth-sample/auth-provider/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>auth-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>auth-provider</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/auth-sample/pom.xml b/java-chassis-samples/auth-sample/pom.xml
index 38cb25c..e695ef0 100644
--- a/java-chassis-samples/auth-sample/pom.xml
+++ b/java-chassis-samples/auth-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>auth-sample</artifactId>
   <name>Java Chassis::Samples::Auth</name>
diff --git a/java-chassis-samples/codefirst-sample/README.md b/java-chassis-samples/codefirst-sample/README.md
index c9d2f4a..1d5a384 100644
--- a/java-chassis-samples/codefirst-sample/README.md
+++ b/java-chassis-samples/codefirst-sample/README.md
@@ -4,56 +4,56 @@ ServiceComb Java Chassis supports generating provider-service API implicitly. Wh
 
 When you develop a microservice in transparent RPC mode, the code does not show how you want to define an API, and all generated APIs are POST methods, The input parameters of all the methods will be packaged as a class and transferred as body parameters. Therefore, if you develop providers using implicit APIs, you are advised to choose Spring MVC or JAX-RS mode to obtain complete RESTful statements.
 
-For detail information please refer to [Doc](http://servicecomb.apache.org/users/service-contract/)
+For detail information please refer to [Doc](https://docs.servicecomb.io/java-chassis/zh_CN/build-provider/code-first/)
 
 
 
 ## Sample Quick Start
 
-1. Start the ServiceComb/Service Center
+* Start the ServiceComb/Service Center
 
-   - [how to start the service center](http://servicecomb.apache.org/users/setup-environment/#)
+   - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
    - make sure service center address is configured correctly in `microservice.yaml` file
 
-   ```yaml
-   cse:
-     service:
-       registry:
-         address: http://127.0.0.1:30100		#service center address
-   ```
+```yaml
+servicecomb:
+ service:
+   registry:
+     address: http://127.0.0.1:30100		#service center address
+```
 
-2. Start the codefirst-provider service
+* Start the codefirst-provider service
 
    - Start provider service via maven
 
-      Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `CodeFirstProviderMain`.
+      Compile the source code, and use `mvn exec` to execute the main class `CodeFirstProviderMain`.
 
       ```bash
-      cd servicecomb-java-chassis/
-      mvn clean install -Psamples -DskipTests			#only need to install at first time.
-      cd samples/codefirst-sample/codefirst-provider/
+      mvn clean install
+      cd codefirst-sample/codefirst-provider/
       mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.codefirst.provider.CodeFirstProviderMain"
       ```
 
    - Start provider service via gradle
 
-      Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `CodeFirstProviderMain`.
+      Compile the source code, and use `mvn exec` to execute the main class `CodeFirstProviderMain`.
 
       ```bash
-      cd servicecomb-java-chassis/
-      mvn clean install -Psamples -DskipTests			#only need to install at first time.
-      cd samples/codefirst-sample/codefirst-provider/
+      mvn clean install
+      cd codefirst-sample/codefirst-provider/
       gradle clean run
       ```
 
    - Start provider service via IDE
 
-      Import the project by InteliJ IDEA or Eclipse, add sample module to pom.xml file in root module `servicecomb-java-chassis/pom.xml`, and add `<module>samples</module>` to `<modules></modules>` block, Then find `main` function `CodeFirstProviderMain` of provider service and `RUN` it like any other Java program.
+      Import the project by InteliJ IDEA or Eclipse, then find `main` function `CodeFirstProviderMain` of provider service and `RUN` it like any other Java program.
 
 3. Start the codefirst-consumer service
 
    ```bash
-   cd samples/codefirst-sample/codefirst-consumer/
+   mvn clean install
+   cd codefirst-sample/codefirst-consumer/
+   mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.codefirst.consumer.CodeFirstConsumerMain"
    ```
 
    - Start consumer service via maven
@@ -74,7 +74,6 @@ For detail information please refer to [Doc](http://servicecomb.apache.org/users
    On the producer side, the output should contain the following stuffs if the producer starts up successfully:
    1. *'swagger: 2.0 info: version: 1.0.0 ...'* means the producer generated swagger contracts
    2. *'rest listen success. address=0.0.0.0:8080'* means the rest endpoint is listening on port 8080
-   3. *'Register microservice instance success'* means the producer has registered successfully to service center
    
    On the consumer side, you can see the following outputs if the consumer can invoke the producer:
    1. *'Pojo Hello Java Chassis'* means the consumer calls sayhi successfully 
diff --git a/java-chassis-samples/codefirst-sample/codefirst-consumer/pom.xml b/java-chassis-samples/codefirst-sample/codefirst-consumer/pom.xml
index 09d3f67..2ffd569 100644
--- a/java-chassis-samples/codefirst-sample/codefirst-consumer/pom.xml
+++ b/java-chassis-samples/codefirst-sample/codefirst-consumer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>codefirst-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>codefirst-consumer</artifactId>
   <name>Java Chassis::Samples::CodeFirst::Consumer</name>
diff --git a/java-chassis-samples/codefirst-sample/codefirst-provider/pom.xml b/java-chassis-samples/codefirst-sample/codefirst-provider/pom.xml
index 5ff9098..d4bd0fb 100644
--- a/java-chassis-samples/codefirst-sample/codefirst-provider/pom.xml
+++ b/java-chassis-samples/codefirst-sample/codefirst-provider/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>codefirst-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>codefirst-provider</artifactId>
   <name>Java Chassis::Samples::CodeFirst::Provider</name>
diff --git a/java-chassis-samples/codefirst-sample/pom.xml b/java-chassis-samples/codefirst-sample/pom.xml
index c2d1cc8..f4773fe 100644
--- a/java-chassis-samples/codefirst-sample/pom.xml
+++ b/java-chassis-samples/codefirst-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>codefirst-sample</artifactId>
   <name>Java Chassis::Samples::CodeFirst</name>
diff --git a/java-chassis-samples/common-schema/pom.xml b/java-chassis-samples/common-schema/pom.xml
index 8604f39..73e341e 100644
--- a/java-chassis-samples/common-schema/pom.xml
+++ b/java-chassis-samples/common-schema/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>common-schema</artifactId>
   <name>Java Chassis::Samples::Common Schema</name>
diff --git a/java-chassis-samples/config-apollo-sample/README.md b/java-chassis-samples/config-apollo-sample/README.md
index aea5064..fb218b3 100644
--- a/java-chassis-samples/config-apollo-sample/README.md
+++ b/java-chassis-samples/config-apollo-sample/README.md
@@ -4,7 +4,7 @@ To use Apollo as configuration source in ServiceComb Java Chassis services:
 
 * Start Apollo service and create a project to associate with Chassis service, then generate a token
 
-  [How to use Apollo configuration center](http://servicecomb.apache.org/cn/users/dynamic-config/)
+  [How to use Apollo configuration center](https://docs.servicecomb.io/java-chassis/zh_CN/config/general-config/)
 
 
 * Import `config-apollo` in pom:
@@ -31,14 +31,13 @@ To use Apollo as configuration source in ServiceComb Java Chassis services:
 
 * Start Chassis service and update configurations in Apollo portal service.
 
-  [Need to start service center first](http://servicecomb.apache.org/users/setup-environment/#)
+    - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
 
-  Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `MainServer`.
+  Compile the source code, and use `mvn exec` to execute the main class `MainServer`.
 
   ```bash
-  cd servicecomb-java-chassis/
-  mvn clean install -Psamples -DskipTests			#only need to install at first time.
-  cd samples/config-apollo-sample/
+  mvn clean install
+  cd config-apollo-sample/
   mvn exec:java -Dexec.mainClass="MainServer"
   ```
 
@@ -53,5 +52,5 @@ To use Apollo as configuration source in ServiceComb Java Chassis services:
 
 [Apollo Doc](https://github.com/ctripcorp/apollo/wiki)
 
-[Use Apollo In ServiceComb](http://servicecomb.apache.org/cn/users/dynamic-config/)
+[Use Apollo In ServiceComb]((https://docs.servicecomb.io/java-chassis/zh_CN/config/general-config/))
 
diff --git a/java-chassis-samples/config-apollo-sample/pom.xml b/java-chassis-samples/config-apollo-sample/pom.xml
index 72af1ec..c504f63 100644
--- a/java-chassis-samples/config-apollo-sample/pom.xml
+++ b/java-chassis-samples/config-apollo-sample/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <artifactId>samples</artifactId>
     <groupId>org.apache.servicecomb.samples</groupId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java-chassis-samples/custom-handler-sample/README.md b/java-chassis-samples/custom-handler-sample/README.md
index aff5cf9..3860abe 100644
--- a/java-chassis-samples/custom-handler-sample/README.md
+++ b/java-chassis-samples/custom-handler-sample/README.md
@@ -28,10 +28,12 @@ ServiceComb support users to define a customized handler and and invoke the hand
 
   ```
 
+   ***NOTICE:*** can use a different name other than `cse.handler.xml`, e.g. `userDefined.hanlder.xml`
+   
 * Configure customized `MyHandler` in `microservice.yaml` file along with other handler together
 
   ```yaml
-  cse:
+  servicecomb:
     # other configurations omitted
     handler:
       chain:
@@ -43,39 +45,38 @@ ServiceComb support users to define a customized handler and and invoke the hand
 
 1. Start the ServiceComb/Service Center
 
-   - [how to start the service center](http://servicecomb.apache.org/users/setup-environment/#)
+   - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
    - make sure service center address is configured correctly in `microservice.yaml` file
 
-   ```yaml
-   cse:
-     service:
-       registry:
-         address: http://127.0.0.1:30100		#service center address
-   ```
+```yaml
+servicecomb:
+ service:
+   registry:
+     address: http://127.0.0.1:30100		#service center address
+```
 
 2. Start the custom-handler-provider service
 
    - Start provider service by maven
 
-     Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `CustomHandlerProviderMain`.
+     Compile the source code, and use `mvn exec` to execute the main class `CustomHandlerProviderMain`.
 
      ```bash
-     cd servicecomb-java-chassis/			#need to complie code at root directory
-     mvn clean install -Psamples -DskipTests			#only need to install at first time.
-     cd samples/custom-handler-sample/custom-handler-provider/
+     mvn clean install
+     cd custom-handler-sample/custom-handler-provider/
      mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.customerhandler.provider.CustomHandlerProviderMain"
      ```
 
    - Start provider service by IDE
 
-     Import the project by InteliJ IDEA or Eclipse, add sample module to pom.xml file in root module `servicecomb-java-chassis/pom.xml`, and add `<module>samples</module>` to `<modules></modules>` block, Then find `main` function `CustomHandlerProviderMain` of provider service and `RUN` it like any other Java program.
+     Import the project by InteliJ IDEA or Eclipse, then find `main` function `CustomHandlerProviderMain` of provider service and `RUN` it like any other Java program.
 
 3. Start the custom-handler-consumer service
 
    Just like how to start custom-handler-provider service. But the main class of custom-handler-consumer service is `CustomHandlerCustomerMain`. 
 
    ```bash
-   cd samples/custom-handler-sample/custom-handler-consumer
+   cd custom-handler-sample/custom-handler-consumer
    mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.customerhandler.consumer.CustomHandlerCustomerMain"
    ```
 
@@ -83,7 +84,6 @@ ServiceComb support users to define a customized handler and and invoke the hand
    On the producer side, the output should contain the following stuffs if the producer starts up successfully:
    1. *'swagger: 2.0 info: version: 1.0.0 ...'* means the producer generated swagger contracts
    2. *'rest listen success. address=0.0.0.0:8080'* means the rest endpoint is listening on port 8080
-   3. *'Register microservice instance success'* means the producer has registered successfully to service center
    
    On the consumer side, you can see the following outputs:
    1. *'It's my handler!'* means custom handler had take effect
diff --git a/java-chassis-samples/custom-handler-sample/custom-handler-consumer/pom.xml b/java-chassis-samples/custom-handler-sample/custom-handler-consumer/pom.xml
index af54101..74ebc53 100644
--- a/java-chassis-samples/custom-handler-sample/custom-handler-consumer/pom.xml
+++ b/java-chassis-samples/custom-handler-sample/custom-handler-consumer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>custom-handler-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>custom-handler-consumer</artifactId>
   <name>Java Chassis::Samples::Custom Handler::Consumer</name>
diff --git a/java-chassis-samples/custom-handler-sample/custom-handler-provider/pom.xml b/java-chassis-samples/custom-handler-sample/custom-handler-provider/pom.xml
index ebd388a..83becd5 100644
--- a/java-chassis-samples/custom-handler-sample/custom-handler-provider/pom.xml
+++ b/java-chassis-samples/custom-handler-sample/custom-handler-provider/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>custom-handler-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>custom-handler-provider</artifactId>
   <name>Java Chassis::Samples::Custom Handler::Provider</name>
diff --git a/java-chassis-samples/custom-handler-sample/pom.xml b/java-chassis-samples/custom-handler-sample/pom.xml
index 0feb0ed..75a9f71 100644
--- a/java-chassis-samples/custom-handler-sample/pom.xml
+++ b/java-chassis-samples/custom-handler-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>custom-handler-sample</artifactId>
   <name>Java Chassis::Samples::Custom Handler</name>
diff --git a/java-chassis-samples/jaxrs-sample/README.md b/java-chassis-samples/jaxrs-sample/README.md
index b5ce8dd..a14a366 100644
--- a/java-chassis-samples/jaxrs-sample/README.md
+++ b/java-chassis-samples/jaxrs-sample/README.md
@@ -9,7 +9,7 @@ ServiceComb supports developers in developing services in JAX-RS mode by using J
 * Release the service. Add `@RestSchema` as the annotation of the service implementation class and specify schemaID, which indicates that the implementation is released as a schema of the current microservice.
 * Create the jaxrsHello.bean.xml file in the resources/META-INF/spring directory and configure base-package that performs scanning
 
-   [Detail information please refer to Doc](http://servicecomb.apache.org/users/develop-with-jax-rs/)
+   [Detail information please refer to Doc](https://docs.servicecomb.io/java-chassis/zh_CN/build-provider/jaxrs/)
 
 ### Consumer Service
 
@@ -19,39 +19,38 @@ To consume a provider-service, only need to decalare a member of a service API t
 
 1. Start the ServiceComb/Service Center
 
-   - [how to start the service center](http://servicecomb.apache.org/users/setup-environment/#)
+   - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
    - make sure service center address is configured correctly in `microservice.yaml` file
 
-   ```yaml
-   cse:
-     service:
-       registry:
-         address: http://127.0.0.1:30100		#service center address
-   ```
+```yaml
+servicecomb:
+ service:
+   registry:
+     address: http://127.0.0.1:30100		#service center address
+```
 
 2. Start the jaxrs-provider service
 
    - Start provider service by maven
 
-     Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `JaxrsProviderMain`.
+     Compile the source code, and use `mvn exec` to execute the main class `JaxrsProviderMain`.
 
      ```bash
-     cd servicecomb-java-chassis/
-     mvn clean install -Psamples -DskipTests			#only need to install at first time.
-     cd samples/jaxrs-sample/jaxrs-provider/
+     mvn clean install
+     cd jaxrs-sample/jaxrs-provider/
      mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.jaxrs.provider.JaxrsProviderMain"
      ```
 
    - Start provider service by IDE
 
-     Import the project by InteliJ IDEA or Eclipse, add sample module to pom.xml file in root module `servicecomb-java-chassis/pom.xml`, and add `<module>samples</module>` to `<modules></modules>` block, Then find `main` function `JaxrsProviderMain` of provider service and `RUN` it like any other Java Program.
+     Import the project by InteliJ IDEA or Eclipse, then find `main` function `JaxrsProviderMain` of provider service and `RUN` it like any other Java Program.
 
 3. Start the jaxrs-consumer service
 
    Just like how to start jaxrs-provider service. But the main class of jaxrs-consumer service is `JaxrsConsumerMain`. 
 
    ```bash
-   cd samples/jaxrs-sample/jaxrs-consumer/
+   cd jaxrs-sample/jaxrs-consumer/
    mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.jaxrs.consumer.JaxrsConsumerMain"
    ```
 
@@ -59,7 +58,6 @@ To consume a provider-service, only need to decalare a member of a service API t
    On the producer side, the output should contain the following stuffs if the producer starts up successfully:
    1. *'swagger: 2.0 info: version: 1.0.0 ...'* means the producer generated swagger contracts
    2. *'rest listen success. address=0.0.0.0:8080'* means the rest endpoint is listening on port 8080
-   3. *'Register microservice instance success'* means the producer has registered successfully to service center
    
    On the consumer side, you can see the following outputs if the consumer can invoke the producer:
    1. *'Hello Java Chassis'* means the consumer calls sayhi by RpcReference successfully
diff --git a/java-chassis-samples/jaxrs-sample/jaxrs-consumer/pom.xml b/java-chassis-samples/jaxrs-sample/jaxrs-consumer/pom.xml
index 9396c9f..dcdfec8 100644
--- a/java-chassis-samples/jaxrs-sample/jaxrs-consumer/pom.xml
+++ b/java-chassis-samples/jaxrs-sample/jaxrs-consumer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>jaxrs-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>jaxrs-consumer</artifactId>
   <name>Java Chassis::Samples::JAXRS::Consumer</name>
diff --git a/java-chassis-samples/jaxrs-sample/jaxrs-provider/pom.xml b/java-chassis-samples/jaxrs-sample/jaxrs-provider/pom.xml
index 8caba1a..5b6e4f2 100644
--- a/java-chassis-samples/jaxrs-sample/jaxrs-provider/pom.xml
+++ b/java-chassis-samples/jaxrs-sample/jaxrs-provider/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>jaxrs-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>jaxrs-provider</artifactId>
   <name>Java Chassis::Samples::JAXRS::Provider</name>
diff --git a/java-chassis-samples/jaxrs-sample/pom.xml b/java-chassis-samples/jaxrs-sample/pom.xml
index a4929fb..76676ea 100644
--- a/java-chassis-samples/jaxrs-sample/pom.xml
+++ b/java-chassis-samples/jaxrs-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>jaxrs-sample</artifactId>
   <name>Java Chassis::Samples::JAXRS</name>
diff --git a/java-chassis-samples/local-service-registry/README.md b/java-chassis-samples/local-service-registry/README.md
index f5754d9..44a7db1 100644
--- a/java-chassis-samples/local-service-registry/README.md
+++ b/java-chassis-samples/local-service-registry/README.md
@@ -30,7 +30,7 @@ Please find the details as follows.
 * Add the following code at the beginning and end of the service consumer Main function
 
 ```java
-    public class xxxClient {
+    public class MyClient {
       public static void main(String[] args) {
       //"yourregistry.yaml" should be put in resource directory
       System.setProperty("local.registry.file", "yourregistry.yaml");
diff --git a/java-chassis-samples/local-service-registry/local-registry-client/pom.xml b/java-chassis-samples/local-service-registry/local-registry-client/pom.xml
index e11a262..00154da 100644
--- a/java-chassis-samples/local-service-registry/local-registry-client/pom.xml
+++ b/java-chassis-samples/local-service-registry/local-registry-client/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>local-service-registry</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>local-registry-client</artifactId>
   <name>Java Chassis::Demo::LocalServiceRegistry::Client</name>
diff --git a/java-chassis-samples/local-service-registry/local-registry-server/pom.xml b/java-chassis-samples/local-service-registry/local-registry-server/pom.xml
index 5529464..bc7d6ce 100644
--- a/java-chassis-samples/local-service-registry/local-registry-server/pom.xml
+++ b/java-chassis-samples/local-service-registry/local-registry-server/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>local-service-registry</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>local-registry-server</artifactId>
   <name>Java Chassis::Demo::LocalRegistry::Server</name>
diff --git a/java-chassis-samples/local-service-registry/pom.xml b/java-chassis-samples/local-service-registry/pom.xml
index 104fb88..d58f89c 100644
--- a/java-chassis-samples/local-service-registry/pom.xml
+++ b/java-chassis-samples/local-service-registry/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>local-service-registry</artifactId>
   <name>Java Chassis::Demo::Local service registry</name>
diff --git a/java-chassis-samples/metrics-extend-healthcheck/README.md b/java-chassis-samples/metrics-extend-healthcheck/README.md
index 97bac1b..0959676 100644
--- a/java-chassis-samples/metrics-extend-healthcheck/README.md
+++ b/java-chassis-samples/metrics-extend-healthcheck/README.md
@@ -28,7 +28,6 @@ In this demo,we had make two checkers :
 <dependency>
   <groupId>org.apache.servicecomb</groupId>
   <artifactId>metrics-core</artifactId>
-  <version>{version}</version>
 </dependency>
 ```
 
@@ -40,7 +39,7 @@ mvn spring-boot:run
 ### Do check and get result
 If you had config rest transport address in microservice.yaml like:
 ```yaml
-cse:
+servicecomb:
   rest:
     address: 0.0.0.0:7777
 ```
diff --git a/java-chassis-samples/metrics-extend-healthcheck/pom.xml b/java-chassis-samples/metrics-extend-healthcheck/pom.xml
index ee8cdbe..9e78471 100644
--- a/java-chassis-samples/metrics-extend-healthcheck/pom.xml
+++ b/java-chassis-samples/metrics-extend-healthcheck/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <artifactId>samples</artifactId>
     <groupId>org.apache.servicecomb.samples</groupId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java-chassis-samples/metrics-write-file-sample/README.md b/java-chassis-samples/metrics-write-file-sample/README.md
index 8f3a32c..9598cc6 100644
--- a/java-chassis-samples/metrics-write-file-sample/README.md
+++ b/java-chassis-samples/metrics-write-file-sample/README.md
@@ -3,26 +3,5 @@
 This sample show how direct get metrics data and write them into separate text files,then other monitor system can load this file in order to get run state of micro-service.
 
 ## What Contains
-### metrics-write-file Module
-This module contains the code how poll Monitors data from MonitorManager and convert data to a special format,then write into files.
 
-**We had designed that will use common Logging component for write file**,and there are many logging implements like log4j,log4j2,logback etc...,so we create *MetricsFileWriter* interface for later autowire.
-
-### metrics-write-file-log4j2-springboot Module
-This module contain log4j2 MetricsFileWriter implement if your project use it as Logging component.
-
-### metrics-write-file-log4j-springboot Module
-This module contain log4j MetricsFileWriter implement if your project use it as Logging component.
-
-## How to use
-Startup ServiceApplication in  metrics-write-file-log4j2-springboot or metrics-write-file-log4j-springboot
-
-1. If start service by maven
-```bash
-mvn spring-boot:run
-```
-you can see metric files had generated in **samples/metrics-write-file-sample/metrics-write-file-log4j(log4j2)-springboot/target/metric** folder,open your browser and make a request to http://localhost:8080/f ,wait a moment then you can see invocation metric files also be generated.
-
-2. If start service by IDE   
-
-you can see metric files had generated in **target/metric** folder,open your browser and make a request to http://localhost:8080/f ,wait a moment then you can see invocation metric files also be generated.
+This module implements MetricsInitializer, to customize user defined output, see [documents](https://docs.servicecomb.io/java-chassis/zh_CN/general-development/metrics/)
\ No newline at end of file
diff --git a/java-chassis-samples/metrics-write-file-sample/metrics-write-file/pom.xml b/java-chassis-samples/metrics-write-file-sample/metrics-write-file/pom.xml
index 7f1633a..a00453c 100644
--- a/java-chassis-samples/metrics-write-file-sample/metrics-write-file/pom.xml
+++ b/java-chassis-samples/metrics-write-file-sample/metrics-write-file/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <artifactId>metrics-write-file-sample</artifactId>
     <groupId>org.apache.servicecomb.samples</groupId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/java-chassis-samples/metrics-write-file-sample/pom.xml b/java-chassis-samples/metrics-write-file-sample/pom.xml
index 8c46ff2..0a88bc9 100644
--- a/java-chassis-samples/metrics-write-file-sample/pom.xml
+++ b/java-chassis-samples/metrics-write-file-sample/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <artifactId>samples</artifactId>
     <groupId>org.apache.servicecomb.samples</groupId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
@@ -33,14 +33,4 @@
     <module>metrics-write-file</module>
   </modules>
 
-  <dependencyManagement>
-    <dependencies>
-      <dependency>
-        <groupId>org.apache.servicecomb</groupId>
-        <artifactId>metrics-core</artifactId>
-        <version>2.0.0-SNAPSHOT</version>
-      </dependency>
-    </dependencies>
-  </dependencyManagement>
-
 </project>
diff --git a/java-chassis-samples/pojo-sample/README.md b/java-chassis-samples/pojo-sample/README.md
index fd89fbe..530cf2a 100644
--- a/java-chassis-samples/pojo-sample/README.md
+++ b/java-chassis-samples/pojo-sample/README.md
@@ -18,7 +18,7 @@ The Develop Method by Configure Remarks:
 * Implement the service in the same way as using Spring XML.
 * Release the service. `@RpcSchema` is used to define schema during the API Hello implementation. 
 
-[Detail information please refer to Doc](http://servicecomb.apache.org/users/develop-with-transparent-rpc/)
+[Detail information please refer to Doc](https://docs.servicecomb.io/java-chassis/zh_CN/build-provider/transparent-rpc/)
 
 ### Consumer Service
 
@@ -36,45 +36,42 @@ public class CodeFirstConsumerMain {
 }
 ```
 
-[Detail information please refer to Doc](http://servicecomb.apache.org/users/develop-with-rpc/)
-
 ### Sample Quick Start
 
 1. Start the ServiceComb/Service Center
 
-   - [how to start the service center](http://servicecomb.apache.org/users/setup-environment/#)
+   - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
    - make sure service center address is configured correctly in `microservice.yaml` file
 
-   ```yaml
-   cse:
-     service:
-       registry:
-         address: http://127.0.0.1:30100		#service center address
-   ```
+```yaml
+servicecomb:
+ service:
+   registry:
+     address: http://127.0.0.1:30100		#service center address
+```
 
 2. Start the pojo-provider service
 
    - Start provider service by maven
 
-     Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `PojoProviderMain`.
+     Compile the source code, and use `mvn exec` to execute the main class `PojoProviderMain`.
 
      ```bash
-     cd servicecomb-java-chassis/
-     mvn clean install -Psamples -DskipTests			#only need to install at first time.
-     cd samples/pojo-sample/pojo-provider/
+     mvn clean install
+     cd pojo-sample/pojo-provider/
      mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.pojo.provider.PojoProviderMain"
      ```
 
    - Start provider service by IDE
 
-     Import the project by InteliJ IDEA or Eclipse, add sample module to pom.xml file in root module `servicecomb-java-chassis/pom.xml`, and add `<module>samples</module>` to `<modules></modules>` block, Then find `main` function `PojoProviderMain` of provider service and `RUN` it like any other Java program.
+     Import the project by InteliJ IDEA or Eclipse, then find `main` function `PojoProviderMain` of provider service and `RUN` it like any other Java program.
 
 3. Start the pojo-consumer service 
 
    Just like how to start pojo-provider service. But the main class of pojo-consumer service is `PojoConsumerMain`. 
 
    ```bash
-   cd samples/pojo-sample/pojo-consumer/
+   cd pojo-sample/pojo-consumer/
    mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.pojo.consumer.PojoConsumerMain"
    ```
 
@@ -82,7 +79,6 @@ public class CodeFirstConsumerMain {
    On the producer side, the output should contain the following stuffs if the producer starts up successfully:
    1. *'swagger: 2.0 info: version: 1.0.0 ...'* means the producer generated swagger contracts
    2. *'rest listen success. address=0.0.0.0:8080'* means the rest endpoint is listening on port 8080
-   3. *'Register microservice instance success'* means the producer has registered successfully to service center
    
    On the consumer side, you can see the following outputs if the consumer can invoke the producer:
    1. *'Hello person ServiceComb/Java Chassis'* means the consumer calls sayHello by RpcReference successfully
diff --git a/java-chassis-samples/pojo-sample/pojo-consumer/pom.xml b/java-chassis-samples/pojo-sample/pojo-consumer/pom.xml
index 0c15b77..89268b0 100644
--- a/java-chassis-samples/pojo-sample/pojo-consumer/pom.xml
+++ b/java-chassis-samples/pojo-sample/pojo-consumer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>pojo-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>pojo-consumer</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/pojo-sample/pojo-provider/pom.xml b/java-chassis-samples/pojo-sample/pojo-provider/pom.xml
index 3d5333c..908fefc 100644
--- a/java-chassis-samples/pojo-sample/pojo-provider/pom.xml
+++ b/java-chassis-samples/pojo-sample/pojo-provider/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>pojo-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>pojo-provider</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/pojo-sample/pom.xml b/java-chassis-samples/pojo-sample/pom.xml
index 647dda7..955b844 100644
--- a/java-chassis-samples/pojo-sample/pom.xml
+++ b/java-chassis-samples/pojo-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>pojo-sample</artifactId>
   <packaging>pom</packaging>
diff --git a/java-chassis-samples/pom.xml b/java-chassis-samples/pom.xml
index 4be9c95..a4cb0e1 100644
--- a/java-chassis-samples/pom.xml
+++ b/java-chassis-samples/pom.xml
@@ -24,7 +24,7 @@
   <artifactId>samples</artifactId>
   <name>Java Chassis::Samples</name>
   <packaging>pom</packaging>
-  <version>2.0.0-SNAPSHOT</version>
+  <version>2.0.0</version>
 
   <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
diff --git a/java-chassis-samples/springmvc-sample/README.md b/java-chassis-samples/springmvc-sample/README.md
index 68f3e3c..1bb3f8b 100644
--- a/java-chassis-samples/springmvc-sample/README.md
+++ b/java-chassis-samples/springmvc-sample/README.md
@@ -3,45 +3,44 @@
 `RestTemplate` is a RESTful API provide by the Spring framework. ServiceComb provides the API for service calling. Users can call microservices using customized URL and `RestTemplate` instance provided by ServiceComb regardless of the specific address of the service.
 
 * The URL must be in format of ServiceComb: `cse://microserviceName/path?querystring`.
-* During use of this URL format, the ServiceComb framework will perform internal microservice descovery, fallbreak, and fault tolerance and send the requests to the microservice providers.
+* During use of this URL format, the ServiceComb framework will perform internal microservice discovery, fallback, and fault tolerance and send the requests to the microservice providers.
 
 ## Sample Quick Start
 
 1. Start the ServiceComb/Service Center
 
-   * [how to start the service center](http://servicecomb.apache.org/users/setup-environment/#)
-   * make sure service center address is configured correctly in `microservice.yaml` file
+   - [how to start the service center](http://servicecomb.apache.org/docs/products/service-center/install/)
+   - make sure service center address is configured correctly in `microservice.yaml` file
 
-   ```yaml
-   cse:
-     service:
-       registry:
-         address: http://127.0.0.1:30100		#service center address
-   ```
+```yaml
+servicecomb:
+ service:
+   registry:
+     address: http://127.0.0.1:30100		#service center address
+```
 
 2. Start the springmvc-provider service
 
    * Start provider service by maven
 
-     Compile the source code at root directory of ServiceComb Java Chassis, which is `servicecomb-java-chassis/`, and use `mvn exec` to execute the main class `SpringmvcProviderMain`.
+     Compile the source code, and use `mvn exec` to execute the main class `SpringmvcProviderMain`.
 
      ```bash
-     cd servicecomb-java-chassis/
-     mvn clean install -Psamples -DskipTests		#Only need to install at first time
-     cd samples/springmvc-sample/springmvc-provider/
+     mvn clean install 
+     cd springmvc-sample/springmvc-provider/
      mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.springmvc.provider.SpringmvcProviderMain"
      ```
 
    * Start provider service by IDE
 
-     Import the project by InteliJ IDEA or Eclipse, add sample module to pom.xml file in root module `servicecomb-java-chassis/pom.xml`, and add `<module>samples</module>` to `<modules></modules>` block, Then find `main` function of provider service and `RUN` it like any other Java Program.
+     Import the project by InteliJ IDEA or Eclipse, then find `main` function of provider service and `RUN` it like any other Java Program.
 
 3. Start the springmvc-consumer service
 
    Just like how to start springmvc-provider service. But the main class of springmvc-consumer service is `SpringmvcConsumerMain`. 
 
    ```bash
-   cd samples/springmvc-sample/springmvc-consumer/
+   cd springmvc-sample/springmvc-consumer/
    mvn exec:java -Dexec.mainClass="org.apache.servicecomb.samples.springmvc.consumer.SpringmvcConsumerMain"
    ```
 
@@ -49,7 +48,6 @@
    On the producer side, the output should contain the following stuffs if the producer starts up successfully:
    1. *'swagger: 2.0 info: version: 1.0.0 ...'* means the producer generated swagger contracts
    2. *'rest listen success. address=0.0.0.0:8080'* means the rest endpoint is listening on port 8080
-   3. *'Register microservice instance success'* means the producer has registered successfully to service center
    
    On the consumer side, you can see the following outputs if the consumer can invoke the producer:
    1. *'RestTemplate consumer sayhi services: Hello Java Chassis'* means the consumer calls sayhi by RestTemplate successfully
@@ -59,4 +57,4 @@
    ​
 ## More
 
-[Develop with RestTemplate](http://servicecomb.apache.org/users/develop-with-rest-template/)
\ No newline at end of file
+[Develop with SpringMVC](https://docs.servicecomb.io/java-chassis/zh_CN/build-provider/springmvc/)
\ No newline at end of file
diff --git a/java-chassis-samples/springmvc-sample/pom.xml b/java-chassis-samples/springmvc-sample/pom.xml
index cf99c05..d0dfbf5 100644
--- a/java-chassis-samples/springmvc-sample/pom.xml
+++ b/java-chassis-samples/springmvc-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>springmvc-sample</artifactId>
   <packaging>pom</packaging>
diff --git a/java-chassis-samples/springmvc-sample/springmvc-consumer/pom.xml b/java-chassis-samples/springmvc-sample/springmvc-consumer/pom.xml
index a413f9a..21840ed 100644
--- a/java-chassis-samples/springmvc-sample/springmvc-consumer/pom.xml
+++ b/java-chassis-samples/springmvc-sample/springmvc-consumer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>springmvc-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>springmvc-consumer</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicClient.java b/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicClient.java
index ecaa775..505a70a 100644
--- a/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicClient.java
+++ b/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicClient.java
@@ -44,15 +44,15 @@ public class SpringmvcBasicClient {
     // Invoke a spring mvc provider using RPC
     responseModel = rpcInoker.postObject(requestModel);
     Assertion.assertEquals("Hello World", responseModel.getResultMessage());
-    responseModelList = rpcInoker.postListObject(requestModel);
+    responseModelList = rpcInoker.postObjectList(requestModel);
     Assertion.assertEquals("Hello World", responseModelList.get(0).getResultMessage());
 
     // Invoke a spring mvc provider using RestTemplate
     responseModel = restTemplateInvoker
-        .postForObject("cse://springmvc/springmvc/basic/postObject", responseModel, SpringmvcBasicResponseModel.class);
+        .postForObject("cse://springmvc/springmvc/basic/postObject", requestModel, SpringmvcBasicResponseModel.class);
     Assertion.assertEquals("Hello World", responseModel.getResultMessage());
-    HttpEntity<SpringmvcBasicRequestModel> requestEntity = new HttpEntity(requestModel, null);
-    responseModelList = restTemplateInvoker.exchange("/postListObject", HttpMethod.POST, requestEntity,
+    HttpEntity<SpringmvcBasicRequestModel> requestEntity = new HttpEntity<>(requestModel, null);
+    responseModelList = restTemplateInvoker.exchange("cse://springmvc/springmvc/basic/postObjectList", HttpMethod.POST, requestEntity,
         new ParameterizedTypeReference<List<SpringmvcBasicResponseModel>>() {
         }).getBody();
     Assertion.assertEquals("Hello World", responseModelList.get(0).getResultMessage());
diff --git a/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicService.java b/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicService.java
index f635ac1..e1b962a 100644
--- a/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicService.java
+++ b/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcBasicService.java
@@ -26,5 +26,5 @@ import java.util.List;
 public interface SpringmvcBasicService {
   SpringmvcBasicResponseModel postObject(SpringmvcBasicRequestModel requestModel);
 
-  List<SpringmvcBasicResponseModel> postListObject(SpringmvcBasicRequestModel requestModel);
+  List<SpringmvcBasicResponseModel> postObjectList(SpringmvcBasicRequestModel requestModel);
 }
diff --git a/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcHelloClient.java b/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcHelloClient.java
index 4acabc2..6dd1558 100644
--- a/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcHelloClient.java
+++ b/java-chassis-samples/springmvc-sample/springmvc-consumer/src/main/java/org/apache/servicecomb/samples/springmvc/consumer/SpringmvcHelloClient.java
@@ -74,6 +74,7 @@ public class SpringmvcHelloClient {
     System.out.println("POJO consumer sayhello services: " + pojoSayHello);
 
     //AsyncRestTemplate Consumer
+    // NOTICE: since 2.0.0, spring deprecated AsyncRestTemplate, user's can use CompletableFuture of RPC instead
     CseAsyncRestTemplate cseAsyncRestTemplate = new CseAsyncRestTemplate();
     ListenableFuture<ResponseEntity<String>> responseEntityListenableFuture = cseAsyncRestTemplate
         .postForEntity("cse://springmvc/springmvchello/sayhi?name=Java Chassis", null, String.class);
diff --git a/java-chassis-samples/springmvc-sample/springmvc-provider/pom.xml b/java-chassis-samples/springmvc-sample/springmvc-provider/pom.xml
index 616cd1f..e1a7953 100644
--- a/java-chassis-samples/springmvc-sample/springmvc-provider/pom.xml
+++ b/java-chassis-samples/springmvc-sample/springmvc-provider/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>springmvc-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>springmvc-provider</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/trust-sample/README.md b/java-chassis-samples/trust-sample/README.md
index e3a0694..7df6b7b 100644
--- a/java-chassis-samples/trust-sample/README.md
+++ b/java-chassis-samples/trust-sample/README.md
@@ -1,4 +1,10 @@
 ## Trust Sample
 This sample shows using public key mechanism to authenticate user and black/white user list. The public key mechanism security is based on Service Center, and users should first configure Service Center authentication. This sample does not show how to configure Service Center authentication.
 
-In this sample, both customer and hacker try to access store, while store configure it's black list to deny hacker's access.
\ No newline at end of file
+In this sample, both customer and hacker try to access store, while store configure it's black list to deny hacker's access.
+
+## How to run
+
+You can run the samples from your IDE. First start TrustMain in store service. And then start HackerMain in 
+hacker service, the running result should be `InvocationException: code=401;msg={message=UNAUTHORIZED}`. And then
+start CustomerMain in customer service, the running result should be `a=1, b=2, result=3` .
\ No newline at end of file
diff --git a/java-chassis-samples/trust-sample/customer/pom.xml b/java-chassis-samples/trust-sample/customer/pom.xml
index 66e32c7..0624598 100644
--- a/java-chassis-samples/trust-sample/customer/pom.xml
+++ b/java-chassis-samples/trust-sample/customer/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>trust-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>customer</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/trust-sample/hacker/pom.xml b/java-chassis-samples/trust-sample/hacker/pom.xml
index 3205f5c..0e57591 100644
--- a/java-chassis-samples/trust-sample/hacker/pom.xml
+++ b/java-chassis-samples/trust-sample/hacker/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>trust-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>hacker</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/trust-sample/pom.xml b/java-chassis-samples/trust-sample/pom.xml
index e8bb4e4..6d498c5 100644
--- a/java-chassis-samples/trust-sample/pom.xml
+++ b/java-chassis-samples/trust-sample/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>samples</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>trust-sample</artifactId>
   <packaging>pom</packaging>
diff --git a/java-chassis-samples/trust-sample/store/pom.xml b/java-chassis-samples/trust-sample/store/pom.xml
index c0a1a24..ba59ae6 100644
--- a/java-chassis-samples/trust-sample/store/pom.xml
+++ b/java-chassis-samples/trust-sample/store/pom.xml
@@ -21,7 +21,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples</groupId>
     <artifactId>trust-sample</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <artifactId>store</artifactId>
   <dependencies>
diff --git a/java-chassis-samples/use-log4j2-sample/pom.xml b/java-chassis-samples/use-log4j2-sample/pom.xml
index a0decd9..f7f1b4c 100644
--- a/java-chassis-samples/use-log4j2-sample/pom.xml
+++ b/java-chassis-samples/use-log4j2-sample/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <artifactId>samples</artifactId>
     <groupId>org.apache.servicecomb.samples</groupId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
diff --git a/porter_lightweight/api/common/endpoint/pom.xml b/porter_lightweight/api/common/endpoint/pom.xml
index 018d9a6..a20b7de 100644
--- a/porter_lightweight/api/common/endpoint/pom.xml
+++ b/porter_lightweight/api/common/endpoint/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>common-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>common-api-endpoint</artifactId>
diff --git a/porter_lightweight/api/common/pom.xml b/porter_lightweight/api/common/pom.xml
index da72f94..ad74433 100644
--- a/porter_lightweight/api/common/pom.xml
+++ b/porter_lightweight/api/common/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>common-api</artifactId>
diff --git a/porter_lightweight/api/common/service/pom.xml b/porter_lightweight/api/common/service/pom.xml
index 9c65fd9..4693b7f 100644
--- a/porter_lightweight/api/common/service/pom.xml
+++ b/porter_lightweight/api/common/service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>common-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>common-api-service</artifactId>
diff --git a/porter_lightweight/api/file-service/endpoint/pom.xml b/porter_lightweight/api/file-service/endpoint/pom.xml
index 75b4ab3..dbd99de 100644
--- a/porter_lightweight/api/file-service/endpoint/pom.xml
+++ b/porter_lightweight/api/file-service/endpoint/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>file-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>file-service-api-endpoint</artifactId>
diff --git a/porter_lightweight/api/file-service/pom.xml b/porter_lightweight/api/file-service/pom.xml
index 0acf65a..e50911d 100644
--- a/porter_lightweight/api/file-service/pom.xml
+++ b/porter_lightweight/api/file-service/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>file-service-api</artifactId>
diff --git a/porter_lightweight/api/file-service/service/pom.xml b/porter_lightweight/api/file-service/service/pom.xml
index 75ecd19..3426ee7 100644
--- a/porter_lightweight/api/file-service/service/pom.xml
+++ b/porter_lightweight/api/file-service/service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>file-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>file-service-api-service</artifactId>
diff --git a/porter_lightweight/api/pom.xml b/porter_lightweight/api/pom.xml
index de89135..6c064b8 100644
--- a/porter_lightweight/api/pom.xml
+++ b/porter_lightweight/api/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-api</artifactId>
diff --git a/porter_lightweight/api/user-service/endpoint/pom.xml b/porter_lightweight/api/user-service/endpoint/pom.xml
index ecdd25f..ab720b4 100644
--- a/porter_lightweight/api/user-service/endpoint/pom.xml
+++ b/porter_lightweight/api/user-service/endpoint/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>user-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>user-service-api-endpoint</artifactId>
diff --git a/porter_lightweight/api/user-service/pom.xml b/porter_lightweight/api/user-service/pom.xml
index 8080919..ec25a31 100644
--- a/porter_lightweight/api/user-service/pom.xml
+++ b/porter_lightweight/api/user-service/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>user-service-api</artifactId>
diff --git a/porter_lightweight/api/user-service/service/pom.xml b/porter_lightweight/api/user-service/service/pom.xml
index 310be1e..a332428 100644
--- a/porter_lightweight/api/user-service/service/pom.xml
+++ b/porter_lightweight/api/user-service/service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>user-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>user-service-api-service</artifactId>
diff --git a/porter_lightweight/file-service/pom.xml b/porter_lightweight/file-service/pom.xml
index 9a600fd..543c5c3 100644
--- a/porter_lightweight/file-service/pom.xml
+++ b/porter_lightweight/file-service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-file-service</artifactId>
diff --git a/porter_lightweight/gateway-service/pom.xml b/porter_lightweight/gateway-service/pom.xml
index b09ed6b..88dadc3 100644
--- a/porter_lightweight/gateway-service/pom.xml
+++ b/porter_lightweight/gateway-service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-gateway-service</artifactId>
diff --git a/porter_lightweight/pom.xml b/porter_lightweight/pom.xml
index 86dc1aa..e238822 100644
--- a/porter_lightweight/pom.xml
+++ b/porter_lightweight/pom.xml
@@ -22,7 +22,7 @@
 
   <groupId>org.apache.servicecomb.samples.porter</groupId>
   <artifactId>porter-application</artifactId>
-  <version>2.0.0-SNAPSHOT</version>
+  <version>2.0.0</version>
   <packaging>pom</packaging>
 
   <properties>
diff --git a/porter_lightweight/user-service/pom.xml b/porter_lightweight/user-service/pom.xml
index 00158d9..0fbfe6a 100644
--- a/porter_lightweight/user-service/pom.xml
+++ b/porter_lightweight/user-service/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-user-service</artifactId>
diff --git a/porter_springboot/api/common/endpoint/pom.xml b/porter_springboot/api/common/endpoint/pom.xml
index 018d9a6..a20b7de 100644
--- a/porter_springboot/api/common/endpoint/pom.xml
+++ b/porter_springboot/api/common/endpoint/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>common-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>common-api-endpoint</artifactId>
diff --git a/porter_springboot/api/common/pom.xml b/porter_springboot/api/common/pom.xml
index da72f94..ad74433 100644
--- a/porter_springboot/api/common/pom.xml
+++ b/porter_springboot/api/common/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>common-api</artifactId>
diff --git a/porter_springboot/api/common/service/pom.xml b/porter_springboot/api/common/service/pom.xml
index 9c65fd9..4693b7f 100644
--- a/porter_springboot/api/common/service/pom.xml
+++ b/porter_springboot/api/common/service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>common-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>common-api-service</artifactId>
diff --git a/porter_springboot/api/file-service/endpoint/pom.xml b/porter_springboot/api/file-service/endpoint/pom.xml
index 75b4ab3..dbd99de 100644
--- a/porter_springboot/api/file-service/endpoint/pom.xml
+++ b/porter_springboot/api/file-service/endpoint/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>file-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>file-service-api-endpoint</artifactId>
diff --git a/porter_springboot/api/file-service/pom.xml b/porter_springboot/api/file-service/pom.xml
index 0acf65a..e50911d 100644
--- a/porter_springboot/api/file-service/pom.xml
+++ b/porter_springboot/api/file-service/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>file-service-api</artifactId>
diff --git a/porter_springboot/api/file-service/service/pom.xml b/porter_springboot/api/file-service/service/pom.xml
index 75ecd19..3426ee7 100644
--- a/porter_springboot/api/file-service/service/pom.xml
+++ b/porter_springboot/api/file-service/service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>file-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>file-service-api-service</artifactId>
diff --git a/porter_springboot/api/pom.xml b/porter_springboot/api/pom.xml
index de89135..6c064b8 100644
--- a/porter_springboot/api/pom.xml
+++ b/porter_springboot/api/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-api</artifactId>
diff --git a/porter_springboot/api/user-service/endpoint/pom.xml b/porter_springboot/api/user-service/endpoint/pom.xml
index ecdd25f..ab720b4 100644
--- a/porter_springboot/api/user-service/endpoint/pom.xml
+++ b/porter_springboot/api/user-service/endpoint/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>user-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>user-service-api-endpoint</artifactId>
diff --git a/porter_springboot/api/user-service/pom.xml b/porter_springboot/api/user-service/pom.xml
index 8080919..ec25a31 100644
--- a/porter_springboot/api/user-service/pom.xml
+++ b/porter_springboot/api/user-service/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>user-service-api</artifactId>
diff --git a/porter_springboot/api/user-service/service/pom.xml b/porter_springboot/api/user-service/service/pom.xml
index 310be1e..a332428 100644
--- a/porter_springboot/api/user-service/service/pom.xml
+++ b/porter_springboot/api/user-service/service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>user-service-api</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>user-service-api-service</artifactId>
diff --git a/porter_springboot/file-service/pom.xml b/porter_springboot/file-service/pom.xml
index 9605101..0beb917 100644
--- a/porter_springboot/file-service/pom.xml
+++ b/porter_springboot/file-service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-file-service</artifactId>
diff --git a/porter_springboot/gateway-service/pom.xml b/porter_springboot/gateway-service/pom.xml
index 5a16f3f..91bf4a3 100644
--- a/porter_springboot/gateway-service/pom.xml
+++ b/porter_springboot/gateway-service/pom.xml
@@ -22,7 +22,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-gateway-service</artifactId>
diff --git a/porter_springboot/pom.xml b/porter_springboot/pom.xml
index 86dc1aa..e238822 100644
--- a/porter_springboot/pom.xml
+++ b/porter_springboot/pom.xml
@@ -22,7 +22,7 @@
 
   <groupId>org.apache.servicecomb.samples.porter</groupId>
   <artifactId>porter-application</artifactId>
-  <version>2.0.0-SNAPSHOT</version>
+  <version>2.0.0</version>
   <packaging>pom</packaging>
 
   <properties>
diff --git a/porter_springboot/user-service/pom.xml b/porter_springboot/user-service/pom.xml
index 1e4ec44..28fe838 100644
--- a/porter_springboot/user-service/pom.xml
+++ b/porter_springboot/user-service/pom.xml
@@ -23,7 +23,7 @@
   <parent>
     <groupId>org.apache.servicecomb.samples.porter</groupId>
     <artifactId>porter-application</artifactId>
-    <version>2.0.0-SNAPSHOT</version>
+    <version>2.0.0</version>
   </parent>
 
   <artifactId>porter-user-service</artifactId>