ThingsBoard 3.3.1源码编译-windows版
前期环境准备
-
环境版本尽量保持一致;
建议先把文章看完再操作,不要直接看一步操作一步!
编译过程要有耐心!不要看到执行到哪一步很久不动了,就直接Ctrl +
C给关掉了。
下载文件基础软件安装包
Tb基础软件安装包.rar
apache-maven-3.8.1-bin.zip
OpenJDK11U-jdk_x64.msi
node-v12.16.1-x64.msi
Git-2.31.1-64-bit.exe
github加速tb.txt
VSCodeUserSetup-x64.exe
需要下载各种依赖
.m2 .gradle .pkg-cache zip包下载
将 .m2 .gradle .pkg-cache zip包下载后解压到用户目录下 C:\Users\你的用户名\
以上2个资料包都在这里。链接:https://pan.baidu.com/s/1mz_oqoNw08TGSngmfRXsSA
提取码:u7bo
原来分享过期了,2021-10-19更新
链接:https://pan.baidu.com/s/1YyIpM1DMYt5wrh50Rs_3QQ
提取码:rxci
注意:
maven仓库地址配置指向C:\Users\你的用户名\.m2,或者将.m2/repository中文件复制到你自己的本地仓库内。
第一次编译不建议使用idea进行操作,它会自动下载,不好控制。
本文编译过程中只使用了vscode(也可以使用sublime等轻量工具)进行一些全局替换操作,其他时候都是cmd执行命令。
编译好再导入idea进行二次开发等。
清理maven本地仓库
windows (分开执行)
cd %userprofile%\.m2\repository
for /r %i in (*.lastUpdated) do del %i
基础软件安装部署
安装git
文章开头提供的zip包内包含此安装文件,或到https://www.git-scm.com/downloads下载,安装后重启cmd验证命令是否生效。
C:\Users\Administrator>git --version
git version 2.31.1.windows.1
安装openjdk11
文章开头提供的zip包内包含此安装文件,或到http://jdk.java.net/archive/下载,安装后配置环境变量并重启cmd验证命令是否生效。
C:\Users\Administrator>java -version
openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)
安装maven
文章开头提供的zip包内包含此安装文件,或到https://maven.apache.org/download.cgi下载,安装后配置环境变量并重启cmd验证命令是否生效。
C:\Users\Administrator>mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: C:\soft\apache-maven-3.8.1\bin\..
Java version: 11.0.11, vendor: AdoptOpenJDK, runtime: C:\Program
Files\AdoptOpenJDK\jdk-11.0.11.9-hotspot
Default locale: zh_CN, platform encoding: GBK
OS name: "windows server 2019", version: "10.0", arch: "amd64", family:
"windows"
配置 maven > conf > setting.xml
建议设置 Maven 为淘宝镜像--加快后续编译速度,非常明显,节约很多时间
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
安装node 12.16.1
文章开头提供的zip包内包含此安装文件,或到https://nodejs.org/en/blog/release/v12.16.1/下载,安装后重启cmd验证命令是否生效。
C:\Users\Administrator>node -v
v12.16.1
C:\Users\Administrator>npm -v
6.13.4
安装yarn
使用npm命令安装yarn,并验证命令是否生效。
npm install -g yarn
C:\Users\Administrator>yarn -v
1.22.11
获取源码及配置
快速下载ThingsBoard源码
git clone https://hub.fastgit.org/thingsboard/thingsboard.git
切换到tag v3.3.1
cd thingsboard
git checkout v3.3.1
结果显示,可能已经最新代码,不提示下载更新情况
Updating files: 100% (1081/1081), done.
Note: switching to 'v3.3.1'.
注释license-maven-plugin
打开根目录pom.xml,搜索注释掉 license-maven-plugin 整个
,两个地方需要注释,如下图所示
替换yarn版本
vscode快捷键 ctrl + shift + h 全局替换
替换node 版本,如果不一样的话
原有版本号
vscode快捷键 ctrl + shift + h 全局替换
源码编译
前端源码安装前端依赖
- 首先,设置 npm 、yarn为淘宝镜像
yarn config set registry https://registry.npm.taobao.org
npm config set registry https://registry.npm.taobao.org
网速不好 npm ,yarn 过程中也会下载失败,这是导致很多同学 thingsboard
编译失败的主要原因,所以我们在进行编译之前,也将 npm 替换为淘宝镜像。
- 编译前端
而且确保已经将.pkg-cache文件夹及里面的文件拷贝到了用户目录下
目录下面输入命名
cd xxx/thingsboard/ui-ngx
yarn install
特别说明:如果卡在某个进度非常久,可以执行如下命令,重新运行安装命令。
yarn cache clean
yarn install
依赖组件成功界面
其前端源码下新增一个依赖包
前端源码编译ui-ngx(可选)
第一次编译的话,习惯先编译一下这个模块,因为它第一次编译太慢了。
cd xxx/thingsboard/ui-ngx
mvn clean package -DskipTests
整体编译
cd xxx/thingsboard
mvn clean package -DskipTests
看到这个界面就是成功了。
可能出现的问题
按照管网教程及网络资料,中间走了一些弯路,提供大家参考。本次安装采用干净的windows
2019操作系统,没有出网络上其他资料提到的问题。
问题一、有些jdk11比较旧
有些jdk11比较旧,建议用安装包里程序,已经测试没问题。以下就是用JDK11旧版本出现情况
编译错误rest-client
问题二、使用高版本nodejs
使用高版本nodejs ,比如:node-v14.15.4-x64.msi
错误内容:Validating package.json...error [email protected]: The
engine "node" is incompatible with this module. Expected version ">=12.0.0
<14.0.0". Got "14.15.4"
本文由博客一文多发平台 OpenWrite 发布!