前言
thingsboard在编译过程中的注意事项。
- 需要很多国外的依赖,有外网连接编译会更快更顺利!不会用梯仔的可以私我。
- 环境依赖的版本要求,要仔细核对!
- 编译过程中正在下载某些依赖,如果手动强行停止,要把当时未下载完的依赖删掉!
- 请勿占用8080,1883等相关端口。
- 一定要有耐心等待!
依赖环境
jdk 1.8 以上
wei@MacBook-Pro ~ % java -versionjava version "1.8.0_211"Java(TM) SE Runtime Environment (build 1.8.0_211-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
Maven 3.6 以上
wei@MacBook-Pro ~ % mvn -vApache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)Maven home: /Users/weijixin/Documents/code_tools/apache-maven-3.6.3Java version: 1.8.0_211, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home/jreDefault locale: zh_CN, platform encoding: UTF-8OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"
Postgresql 9 以上
# docker方式安装单机开发环境docker run \-d \--name postgres \-p 5432:5432 \-e POSTGRES_USER=postgres \-e POSTGRES_PASSWORD=postgres \-v ~/docker/data/postgresql/data:/var/lib/postgresql/data \postgres
node
wei@MacBook-Pro ~ % node -vv12.13.1
npm
wei@MacBook-Pro ~ % npm -v6.9.0
yarn ```shell
npm 安装yarn命令
wei@MacBook-Pro ~ % npm install -g yarn
wei@MacBook-Pro ~ % yarn -v 1.22.10
- git```shellwei@MacBook-Pro ~ % git --versiongit version 2.24.1 (Apple Git-126)
- idea
- lombok插件

- protobuf插件
或
拉取源码
或GitHub加速clone ThingsBoardgit clone https://github.com/thingsboard/thingsboard.git
切换分支
下载的代码是 master 主分支的,需要切换到稳定版本的分支。
如果使用git checkout release-3.2切换的是最新tag v3.2.2这个版本需要jdk11,
这个需要注意,否则编译出现错误提示无效的标记: --release就是因为java版本不匹配导致。git checkout v3.2.1
git tag查看所有taggit branch查看当前分支git branch -a查看所有分支 (带星号的是当前分支,下面演示是已切换的)git checkout v3.2.1切换到tag v3.2.1分支 ```shell wei@MacBook-Pro thingsboard % git branch -a master
- lombok插件
- release-3.2
remotes/origin/HEAD -> origin/master
remotes/origin/develop/2.5.6
remotes/origin/develop/3.3
remotes/origin/develop/lwm2m
remotes/origin/develop/snmp
remotes/origin/feature/cassandra-partitions-cache
remotes/origin/feature/queue
remotes/origin/lwm2m_tests
remotes/origin/master
remotes/origin/release-1.0
remotes/origin/release-1.1
remotes/origin/release-1.2
remotes/origin/release-1.3
remotes/origin/release-1.4
remotes/origin/release-2.0
remotes/origin/release-2.2
remotes/origin/release-2.3
remotes/origin/release-2.4
remotes/origin/release-2.5
remotes/origin/release-3.0
remotes/origin/release-3.1
remotes/origin/release-3.2
<a name="Um5Up"></a>## Maven中央仓库设置```shell<mirror><id>repo1</id><name>repo1 maven</name><url>https://repo1.maven.org/maven2/</url><mirrorOf>central</mirrorOf></mirror>
版本核对
修改项目 node和yarn的版本号 和本机安装的一致
ctrl + shift + F 全局搜索 ctrl + shift + R全局替换
搜索license-maven-plugin,将整个 plugin 都注释
开始编译
进入项目根目录执行
看到下图表示编译成功,每个项目耗时也可以看到有的确实比较久,所以编译过程要耐心!mvn clean install -DskipTests
数据库表自动导入
根据需求选择数据库方案,参考数据库配置,下面是使用PostgreSQL储存所有数据的步骤。
将dao模块resources下的sql文件夹复制到application模块的data文件夹下
提前在postgres中创建数据库thingsboard
postgres数据库信息配置:
修改application模块resources下的thingsboard.yml的datasource部分
执行application模块的ThingsboardInstallApplication数据库表和数据就会自动生成。
初次启动项目,很多有关表的问题:ts_kv未分区,缺少admin_settings表等都是由于没有进行这个步骤。
访问thingsboard
localhost:8080
用户名:sysadmin@thingsboard.org 密码为:sysadmin
这是系统管理员界面,没有设备管理等其他选项卡。
在创建一个租户
租户下创建租户管理员用户
点击激活,输入密码后,就可以使用租户管理员账号登录了。

自动跳转到此租户的管理界面了。
此时再放回刚刚系统管理员的界面进行操作会提示「禁止访问」,因为刚刚登陆了租户管理员,浏览器记录的登录信息已经变成了租户管理员的信息,当然不能访问系统管理员的界面。用系统管理员账号,重新登录即可。
编译问题
Failure to find org.gradle:gradle-tooling-api:jar:6.3
关键词.gutter.gutter-horizontal
无效的标记:—release
Failed to delete xxx/node.exe
org.thingsboard.server.gen.*找不到解决方法
以及ThingsBoard 3.2.2源码编译windows傻瓜版中列出的可能遇见的问题

