From 45516a3ed89bf97ad6cbeee7d06f0af0770a3b1f Mon Sep 17 00:00:00 2001 From: John Niang Date: Mon, 10 Feb 2020 14:59:15 +0800 Subject: [PATCH] Make an alternative method while cloning (#4333) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Make an alternative method while cloning skywalking project and sync submodules * Add language type for code block * Intend code blocks under list block * Make list number same * Move a tip about building from source codes. Co-authored-by: 吴晟 Wu Sheng --- docs/en/guides/How-to-build.md | 155 ++++++++++++++++++--------------- 1 file changed, 83 insertions(+), 72 deletions(-) diff --git a/docs/en/guides/How-to-build.md b/docs/en/guides/How-to-build.md index 86c50e36fb..7668d3d68e 100644 --- a/docs/en/guides/How-to-build.md +++ b/docs/en/guides/How-to-build.md @@ -6,7 +6,7 @@ This document helps people to compile and build the project in your maven and se ### Maven behind Proxy If you need to execute build behind the proxy, edit the *.mvn/jvm.config* and put the follow properties: -``` +```properties -Dhttp.proxyHost=proxy_ip -Dhttp.proxyPort=proxy_port -Dhttps.proxyHost=proxy_ip @@ -17,11 +17,22 @@ If you need to execute build behind the proxy, edit the *.mvn/jvm.config* and pu ### Build from GitHub 1. Prepare git, JDK8 and maven3 -1. `git clone https://github.com/apache/skywalking.git` -1. `cd skywalking/` -1. Switch to the tag by using `git checkout [tagname]` (Optional, switch if want to build a release from source codes) -1. `git submodule init` -1. `git submodule update` +1. Clone project + + If you want to build a release from source codes, provide a `tag name` by using `git clone -b [tag_name] ...` while cloning. + + ```bash + git clone --recurse-submodules https://github.com/apache/skywalking.git + cd skywalking/ + + OR + + git clone https://github.com/apache/skywalking.git + cd skywalking/ + git submodule init + git submodule update + ``` + 1. Run `./mvnw clean package -DskipTests` 1. All packages are in `/dist` (.tar.gz for Linux and .zip for Windows). @@ -81,69 +92,69 @@ Refer to [Build docker image](../../../docker) for more details. **NOTICE**: If you clone the codes from GitHub, please make sure that you had finished step 1 to 7 in section **[Build from GitHub](#build-from-github)**, if you download the source codes from the official website of SkyWalking, please make sure that you had followed the steps in section **[Build from Apache source code release](#build-from-apache-source-code-release)**. 1. Import the project as a maven project -2. For supporting multiple source directories, you need to add the following configuration in `skywalking/pom.xml` file: -``` - - org.codehaus.mojo - build-helper-maven-plugin - 1.8 - - - add-source - generate-sources - - add-source - - - - src/java/main - apm-protocol/apm-network/target/generated-sources/protobuf - apm-collector/apm-collector-remote/collector-remote-grpc-provider/target/generated-sources/protobuf - - - - - -``` -3. Add the following configuration under to let eclipse's M2e plug-in supports execution's solution configuration -``` - - - - - org.eclipse.m2e - lifecycle-mapping - 1.0.0 - - - - - - org.codehaus.mojo - build-helper-maven-plugin - [1.8,) - - add-source - - - - - - - - - -``` -4. Adding Google guava dependency to apm-collector-remote/collector-remote-grpc-provider/pom.xml files -``` - - com.google.guava - guava - 24.0-jre - -``` -5. Run `./mvnw compile -Dmaven.test.skip=true` -6. Run `maven update`. Must remove the clean projects item before maven update(This will be clear the proto conversion Java file generated by the compiling) -7. Run `./mvnw compile` compile collector-remote-grpc-provider and apm-protocol -8. Refresh project +1. For supporting multiple source directories, you need to add the following configuration in `skywalking/pom.xml` file: + ```xml + + org.codehaus.mojo + build-helper-maven-plugin + 1.8 + + + add-source + generate-sources + + add-source + + + + src/java/main + apm-protocol/apm-network/target/generated-sources/protobuf + apm-collector/apm-collector-remote/collector-remote-grpc-provider/target/generated-sources/protobuf + + + + + + ``` +1. Add the following configuration under to let eclipse's M2e plug-in supports execution's solution configuration + ```xml + + + + + org.eclipse.m2e + lifecycle-mapping + 1.0.0 + + + + + + org.codehaus.mojo + build-helper-maven-plugin + [1.8,) + + add-source + + + + + + + + + + ``` +1. Adding Google guava dependency to apm-collector-remote/collector-remote-grpc-provider/pom.xml files + ```xml + + com.google.guava + guava + 24.0-jre + + ``` +1. Run `./mvnw compile -Dmaven.test.skip=true` +1. Run `maven update`. Must remove the clean projects item before maven update(This will be clear the proto conversion Java file generated by the compiling) +1. Run `./mvnw compile` compile collector-remote-grpc-provider and apm-protocol +1. Refresh project -- GitLab