四时宝库

程序员的知识宝库

SkyWalking8.7.0源码环境搭建(skywalking源码分析)

1. 下载源码并导入 IDEA 中

1. 从官网下载 [源码](https://archive.apache.org/dist/skywalking/8.7.0/apache-skywalking-apm-8.7.0-src.tgz)

2. 解压下载的源码到文件夹,效果如下图所示


4. 导入 IDEA 中,第一次导入会比较慢,因为需要下载各种依赖和插件,导入后效果如下:


2. 编译之前的修

1、去除 maven-checkstyle-plugin 插件,

  该插件是用来规范代码风格的,防止误报错去除

2、修改 apm-webapp 的 pom.xml 文件

  apm-webapp 是 SkyWalking 的前端项目,负责编译前端工程 skywalking-ui;它会下载最新的 node 环境,在编译时容易卡住。

  **解决方案 1**

  注释这一部分的插件:frontend-maven-plugin,不进行前端模块的编译;

  **解决方案 2**

  修改插件中的下载镜像地址:


  将镜像地址,改为国内的解析地址 https://registry.npm.taobao.org/

  **注意:此处选择第一个解决办法,因为本机已经安装过了 node 环境,需要使用前端时可以单独编译。**

3. 下载安装Node.js 环境搭建

1. 到 NodeJs [中文官网](https://nodejs.org/zh-cn/download/),选择系统对应的长期维护版本下载,即可;

本文,下载的是 [node-v16.13.1-win-x64.zip](https://nodejs.org/dist/v16.13.1/node-v16.13.1-win-x64.zip)

2. 解压下载的软件包到文件夹,效果如下图所示

3. 在解压后的目录中,新建下列两个目录

* node_global

* node_cache

注意 1:node_global 为 npm 全局安装位置;node_cache 为 npm 缓存路径

注意 2:本文件解压到 D:\Program Files\node-v16.13.1-win-x64 后面都以此为例,实际开发中请修改成自己的解压目录

注意 3:整体目录如下

配置环境变量

  新增环境变量名为:NODE_HOME 变量值为:D:\Program Files\node-v16.13.1-win-x64 的环境变量;

  修改 PATH,并添加 %NODE_HOME% 和 %NODE_HOME%\node_globa

  注意 1:查看环境变量,在命令行下使用下列命令检查

* echo %node_home%

* echo %path%

  注意 2:测试安装是否成功:打开 cmd 窗口,输出如下命令会输出 NodeJs 和 npm 的版本号

* node -v

* npm -v

### 配置 npm 全局模块路径和 cache 默认安装位置

  打开 cmd,分开执行如下命令:

* npm config set prefix "D:\Program Files\node-v16.13.1-win-x64\node_global"

* npm config set cache "D:\Program Files\node-v16.13.1-win-x64\node_cache"

  注意 1:将步骤一创建的 node_global(npm 全局安装位置)和 node_cache(npm 缓存路径)与 npm 联系起来

  注意 2:如果执行命令卡死,可以删除 C:\Users\用户名.npmrc 后重新执行。(用户名:为当前电脑的用户名)

  注意 3:命令中的双引号,不能少

### 修改 npm 镜像源,提高下载速度

  打开 cmd,分开执行如下命令:

* npm config set registry https://registry.npm.taobao.org/

  注意 1:查看源命令为:npm config get registry

  注意 2:如果要恢复成原来的样子,命令为:npm config set registry https://registry.npmjs.org/

## 4. Protocol buffers 工具环境搭建

下载软件包

  到 [工具官网](https://github.com/protocolbuffers/protobuf/releases) 下载,对应系统版本的工具包,本文下载的为 [protoc-3.19.2-win64.zip](https://github.com/protocolbuffers/protobuf/releases/download/v3.19.2/protoc-3.19.2-win64.zip)


配置环境变

  将下载好的软件包解压到文件夹,效果如下图所示



  新增环境变量名为:PROTOC_HOME 变量值为:D:\Program Files\protoc-3.19.2-win64 的环境变量;

  修改 PATH,并添加 %PROTOC_HOME%\bin

  注意 1:打开 cmd,运行下面的命令,编译运行版本已经被正确配置

* protoc --version

5. 编译项目进行打包

5.1. 编译 skywalking-ui 前端代码



  使用 IDEA 的命令行进入 skywalking-ui 目录,依次执行如下命令进行,skywalking-ui 的编译

* npm install

* npm run build

  编译完成后,将会在 skywalking-ui 目录下生成如下图所示文件



5.2. 编译 apm-protocol 协议项目代码

1. 方式 1:命令行方式

  使用 IDEA 的命令行进入 apm-protocol 目录,依次执行如下命令进行 apm-protocol 的编译

* cd apm-protocol

* mvn install '-Dmaven.test.skip=true'

2. 方式 2:图形界面方式

  利用 IDEA 自带的 maven 图形界面方式进行编译



  编译结束后,apm-protocol 目录下的 apm-network 将会又如下效果的目录:


5.3. 编译打包 apm-webapp

1. 方式 1:命令行方式

  使用 IDEA 的命令行进入 apm-webapp 目录,依次执行如下命令进行 apm-webapp 的编译

* cd apm-webapp

* mvn clean compile package '-Dmaven.test.skip=true'

2. 方式 2:图形界面方式

  利用 IDEA 自带的 maven 图形界面方式进行编译



  编译后 apm-webapp 目录下将会呈现效果如下的目录:



6. 整体编译打包

1. 方式 1:命令行方式

  使用 IDEA 的命令行进入 apache-skywalking-apm-8.7.0 目录,依次执行如下命令进行 apache-skywalking-apm-8.7.0 的编译

* cd apache-skywalking-apm-8.7.0

* mvn clean compile pacakge '-Dmaven.test.skip=true'

2. 方式 2:图形界面方式

  利用 IDEA 自带的 maven 图形界面方式进行编译



  编译完成后,可以在根目录下,看到一个 dist 目录,目录中的即为打包后的,可执行文件



分别为 es7 版本和 es6 版本的可执行包,根据实际需要提供软件包即可

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接