thingsboard源码编译启动
开发环境
不同的版本对应的开发环境不同(这里以3.3.3版本说明)
- jdk11+:参考jdk11+安装(win)
- Maven3.6+:Maven安装配置
- Git:参考Git安装
- IDEA: 参考IDEA安装
- PostgreSQL11.7+:参考postgresql安装(windows)
源码拉取
GitHub或者Gitee搜索thingsboard,复制链接地址进行拉取。
GitHub拉取
GitHub项目地址:https://github.com/thingsboard/thingsboard
# GitHub拉取
git clone https://github.com/thingsboard/thingsboard.git
Gitee拉取
Gitee项目地址:https://gitee.com/mirrors/ThingsBoard?_from=gitee_search
# Gitee拉取
git clone https://gitee.com/mirrors/ThingsBoard.git
编译
前提:maven已经安装并且已经配置完毕
附上个人使用的配置文件(注意:记得修改56行的安装路径)
网盘链接:https://pan.baidu.com/s/1RCl5whjKx1G-1MjEcovM1A
提取码:1024
在cmd到TH项目根路径下运行如下命令:
mvn clean install -DskipTests --settings <配置文件路径>
在编译的过程中可能会出现错误(找不到jar包 或者 网络错误),根据出现的错误进行修改。
经过漫长的等待......
导入IDEA
- 设置maven配置文件,选择编译时使用的maven配置文件。
- 使用idea打开项目文件,等待文件加载完成
- 经过漫长的等待.....
导入测试数据
前提:已安装postgresql11.7+
pg用户
-
创建新的pgSQL用户
-
或者直接使用postgres用户
pg数据库
创建thingsboard
数据库,并指定用户
修改配置文件
thingsboard\application\src\mian\rescoures\thingsboard.yml
,找到# SQL DAO Configuration
,大约在590行左右
# SQL DAO Configuration
spring:
data:
jpa:
repositories:
enabled: "true"
jpa:
open-in-view: "false"
hibernate:
ddl-auto: "none"
database-platform: "${SPRING_JPA_DATABASE_PLATFORM:org.hibernate.dialect.PostgreSQLDialect}"
datasource:
driverClassName: "${SPRING_DRIVER_CLASS_NAME:org.postgresql.Driver}"
# url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://地址:端口/数据库名字}"
url: "${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/thingsboard}"
# username: "${SPRING_DATASOURCE_USERNAME:数据库用户名}"
username: "${SPRING_DATASOURCE_USERNAME:postgres}"
# password: "${SPRING_DATASOURCE_PASSWORD:数据库密码}"
password: "${SPRING_DATASOURCE_PASSWORD:postgres}"
hikari:
maximumPoolSize: "${SPRING_DATASOURCE_MAXIMUM_POOL_SIZE:16}"
导入测试数据
cmd运行thingsboard\application\target\windoes
目录下的install_dev_db.bat
,显示数据导入成功说明数据导入完成。
启动(见证奇迹)
见证奇迹
- 切换至IDEA
- 运行
thingsboard\application\src\mian\java\org.thingsboard.server\ThingsboardServerAPPlocation
文件 - 一次不太漫长的等待
- 在浏览器访问
localhost:8080
或者127.0.0.1:8080
(本地访问)
账户/密码
官方提供的三个账号
账号 | 密码 | 说明 |
---|---|---|
sysadmin@thingsboard.org | sysadmin | 系统管理员 |
tenant@thingsboard.org | tenant | 租户 |
customer@thingsboard.org | customer | 客户 |