IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 物联网平台thingsboard编译一步到位 -> 正文阅读

[嵌入式]物联网平台thingsboard编译一步到位

物联网平台thingsboard编译一步到位

先上编译结果,耗时18分39秒

1.thingsboard简介

ThingsBoard是一个开源物联网平台,可实现物联网项目的快速开发、管理和扩展。ThingBoard是基于Apache License 2.0协议开源的,可以用于商业用途,因此我们可以对此平台进行二次开发。

  • Apache License 2.0的权利: 可以免费使用、可以修改、可以按照自己的方式进行集成。
  • Apache License 2.0的要求: 应该清楚的在产品、网站和市场介绍材料中明确指出使用了所依赖Apache License 2.0的软件。

关于Apache License 2.0等开源协议可以找相关资料研究。

thingsboard特点

据官网介绍,ThingsBoard可用于:

  • 设备管理,资产和客户并定义他们之间的关系。
  • 基于设备和资产收集数据并进行可视化。
  • 采集遥测数据并进行相关的事件处理进行警报响应。
  • 基于远程RPC调用进行设备控制。
  • 基于生命周期事件、REST API事件、RPC请求构建工作流。
  • 基于动态设计和响应仪表板向你的客户提供设备或资产的遥测数据。
  • 基于规则链自定义特定功能。
  • 发布设备数据至第三方系统。

2.clone项目

git clone https://github.com/thingsboard/thingsboard.git

clone好的项目请先不要去编辑器中运行,最好先编译好,因为需要下载很多依赖,编译安装的过程中也会生成一些类,直接打开是会报错的。

3.前置准备

3.1 安装JDK11

ThingsBoard从3.2.2之后将JDK更新到11版本,相较于之前的版是一个极大的更新。
我本次的JDK版本为:

C:\Users\kai>java -version
openjdk version "11.0.13" 2021-10-19
OpenJDK Runtime Environment Temurin-11.0.13+8 (build 11.0.13+8)
OpenJDK 64-Bit Server VM Temurin-11.0.13+8 (build 11.0.13+8, mixed mode)

JDK11的安装包可以从清华镜像下载:
https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/11/jdk/x64/windows/

在这里插入图片描述

3.2 安装Nodejs

thingsboard的前端模块需要依赖Nodejs。

我本次安装的Nodejs版本时:

C:\Users\kai>node -v
v17.1.0

Nodejs可以去官网下载安装。
在这里插入图片描述

安装yarn:

npm install -g yarn
yarn config set registry https://registry.npm.taobao.org -g 
yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g

3.3 将pkg-fetch放入本地缓存

为了防止在编译过程中JavaScript Executor 编译失败:

[ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.12.0:yarn (yarn install) on project js-executor: Failed to run task: 'yarn install' failed. org.apache.commons.exec.ExecuteException: Process exited with an error: 2 (Exit value: 2) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :js-executor

需要将pkg-fetch文件放入本地的C:\Users\用户名\.pkg-fetch 目录中。

相关文件可以去github上下载,根据报错提示下载对应的版本:https://github.com/vercel/pkg-fetch/releases

我这里下载的是v12.22.2版本:

  • 将 node-v12.22.2-linux-x64更名为fetched-v12.22.2-linux-x64
  • 将 node-v12.22.2-win-x64更名为 fetched-v12.22.2-win-x64

3.4 配置maven镜像地址

 <mirror>         
      <id>central</id>         
      <name>aliyun central</name>         
      <url>https://maven.aliyun.com/repository/central</url>        
      <mirrorOf>central</mirrorOf>
    </mirror>
    <mirror>         
      <id>google</id>         
      <name>aliyun google</name>         
      <url>https://maven.aliyun.com/repository/google</url>        
      <mirrorOf>google</mirrorOf>
    </mirror>
    <mirror>         
      <id>public</id>         
      <name>aliyun public</name>         
      <url>https://maven.aliyun.com/repository/public</url>        
      <mirrorOf>public</mirrorOf>
    </mirror>
    <mirror>         
      <id>gradle-plugin</id>         
      <name>aliyun gradle-plugin</name>         
      <url>https://maven.aliyun.com/repository/gradle-plugin</url>        
      <mirrorOf>gradle-plugin</mirrorOf>
    </mirror>
    <mirror>         
      <id>spring</id>         
      <name>aliyun spring</name>         
      <url>https://maven.aliyun.com/repository/spring</url>        
      <mirrorOf>spring</mirrorOf>
    </mirror>
    <mirror>         
      <id>spring-plugin</id>         
      <name>aliyun spring-plugin</name>         
      <url>https://maven.aliyun.com/repository/spring-plugin</url>        
      <mirrorOf>spring-plugin</mirrorOf>
    </mirror> 
    <mirror>         
      <id>grails-core</id>         
      <name>aliyun grails-core</name>         
      <url>https://maven.aliyun.com/repository/grails-core</url>        
      <mirrorOf>grails-core</mirrorOf>
    </mirror>
    <mirror>         
      <id>apache-snapshots</id>         
      <name>aliyun apache-snapshots</name>         
      <url>https://maven.aliyun.com/repository/apache-snapshots</url>        
      <mirrorOf>apache-snapshots</mirrorOf>
    </mirror>

4.编译运行

在thingsboard项目目录下运行maven install指令开始编译安装:

mvn clean install -DskipTests

如果遇到网络原因导致有些包没有下载下来请重新执行上述指令。
在这里插入图片描述

好了,至此编译安装完成!!!

下一篇文章介绍如何在idea中启动运行。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-11-15 16:02:04  更:2021-11-15 16:02:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:46:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码