1、下载源代码

Thingsboard在持续升级,目前的发布版本是2.4,开发版分别是2.5、3.0,master版本为2.6。

和以前版本相比,主要是把单体架构升级为微服务架构。

https://github.com/thingsboard/thingsboard

用git下载代码过程参考:

https://www.cnblogs.com/weschen/p/11465103.html

注意,本文下载为master版本(2.6)。

直接编译源码,在编译JsExecutor Microservice时出现以下问题:

Win10环境下编译Thingsboard2.6过程

 

 

报ESOCKETTIMEDOUT错,在安装NPM时,下载超时。

 

2、安装Nodejs(此步骤可以跳过)

为解决以上问题,删除原有手工配置的NODE_PATH环境变量,下载安装NodeJS,具体参考:

https://www.cnblogs.com/weschen/p/11465103.html

https://thingsboard.io/docs/user-guide/contribution/how-to-contribute/

 

目前的版本为:

NPM:6.13.4

Node:v12.15.0

Win10环境下编译Thingsboard2.6过程

 

执行命令行:

#npm 环境读取环境变量包

npm install -g cross-env

#webpack打包工具

npm install -g webpack

 

3、出现下载文件太慢引起的打包失败问题

看来,安装NPM不一定能解决问题,主要是资源依赖的问题。

网上有人遇到同样的下载问题:

https://www.e-learn.cn/topic/3555267

https://www.jianshu.com/p/e0e6d42cb978

https://github.com/thingsboard/thingsboard/issues/2084

 

在C:\Users\用户名\.pkg-cache\v2.6目录下,确实有名为:

fetched-v10.15.3-linux-x64.downloading

的文件。可以在

https://github.com/zeit/pkg-fetch/releases 下载

uploaded-v2.6-node-v10.15.3-linux-x64 和 uploaded-v2.6-node-v10.15.3-win-x64

拷贝到C:\Users\用户名\.pkg-cache\v2.6 目录,改名为

fetched-v10.15.3-linux-x64 和 fetched-v10.15.3-win-x64

 

重新编译,如有目录无法删除的问题,可以用

taskkill /f /im java.exe

关闭在运行的打包程序。

 

这样,不用等待下载,编译速度很快,但是出现ELIFECYCLE错误

Win10环境下编译Thingsboard2.6过程

可见,还是NPM打包引起的问题,参考

https://www.cnblogs.com/wwjj4811/p/10283094.html

在msa\js-executor目录下,删除node_modules目录,和package-lock.json文件

执行

npm cache clear --force

npm install

 

此时,在C:\Users\用户名\.pkg-cache\v2.6 目录下,下载了

fetched-v10.17.0-linux-x64

fetched-v10.17.0-win-x64

看来应该是NPM版本问题?

 

这样,JsExecutor微服务终于编译成功了。

 

4、其他微服务的NPM打包问题

同样,在编译Web UI微服务时,也出现类似问题。

Win10环境下编译Thingsboard2.6过程

 

同样处理,在Web-UI目录下执行

npm cache clear --force

npm install

Win10环境下编译Thingsboard2.6过程

 

全部编译通过,下一步可以研究ThingsBoard微服务了。

Win10环境下编译Thingsboard2.6过程

 

相关文章:

  • 2021-09-04
  • 2022-01-05
  • 2021-11-16
  • 2021-06-24
  • 2021-05-17
  • 2021-10-01
  • 2021-09-10
猜你喜欢
  • 2021-11-06
  • 2022-12-23
  • 2022-12-23
  • 2021-07-06
  • 2021-12-27
  • 2021-05-04
相关资源
相似解决方案