第五章、Windows下构建补充
构建thingsboard过程耗时切巨烦,经常会因为各种原因报错,这里我提供一个构建的方案,能极大提高构建的成功率。
1、提高构建成功率的方法
整体安装有种先有鸡还是先有蛋的感觉,我的思路是想通过
mvn dependency:go-offline
命令将所有依赖下载下来到本地仓库,避免编译过程中再去联网,特别对于进行需要进行重新构建的要求。但经过测试,下载依赖需要用到编译完成后生成的deb文件,具体原因应该是使用mvn dependency:go-offline时需要下载全部依赖,但有些deb的依赖需要通过构建才能生成。所以产生了矛盾。
我遇到的有application-3.7.0-deb.deb
[INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 18.465 s [INFO] Finished at: 2024-07-31T15:44:47+08:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal on project tb: Could not resolve dependencies for project org.thingsboard.msa:tb:pom:3.7.0: org.thingsboard:application:deb:deb:3.7.0 was not found in https://repo.jenkins-ci.org/releases during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of jenkins has elapsed or updates are forced -> [Help 1]
再比如:vc-executor-3.7.0-deb.deb
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 26.452 s
[INFO] Finished at: 2024-07-31T16:39:46+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project vc-executor-docker: Could not resolve dependencies for project org.thingsboard.msa:vc-executor-docker:pom:3.7.0: Could not find artifact org.thingsboard.msa:vc-executor:deb:deb:3.7.0 in thingsboard-release (https://repo.thingsboard.io/artifactory/libs-release-public/) -> [Help 1]
还有 thingsboard.deb、vc-executor-3.7.0-deb.deb等。
在你得到这些错误的时候,基本上大部分的依赖应该都下载好了,所以其实可以在这个时候进行构建了。
具体构建过程参考前一章。
2、准备工作
2.1、安装OpenJDK
去微软下载靠谱一些。
下载地址:下载 Microsoft Build of OpenJDK | Microsoft Learn
选择你要的windows版本下载安装。
2.2、安装Maven
去Maven – Download Apache Maven下在最新的Maven,我这里是3.8.8,把里面的文件放在自己想放的目录里。我这里是放在 C:\maven 目录。
修改环境变量和更改Maven仓库,参考之前第四章5.2节<