Thingsboard开发环境搭建 Windows 10

Thingsboard开发环境搭建 Windows 10

1.软件安装
2.配置JDK 11,maven 3.6.3环境变量
3.调试及一些bug

软件安装

1.IDEA 我的是2021.2 正版软件,安装过程自查
2.Git 正版软件,安装过程自查,版本:git version 2.33.0.windows.2
3.node.js 正版软件,安装过程自查,安装过程中会添加环境变量, 版本:v14.17.6
4.postgresql 正版软件,安装过程自查,安装过程中会添加环境变量, 版本:12.8,这里建议安12.8的,因为我安的postgresql:9.6,执行不了PROCEDURE
安装过程:docker pull postgres:12.8
docker run --name postgres -e POSTGRES_PASSWORD=password -p 54323:5432 -d postgres:12.8
这里报错:iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 54323 -j DNAT --to-destinati
解决办法:杀死docker进程,再重启docker即可
pkill docker
iptables -t nat -F
ifconfig docker0 down
(摘自某位大佬,但这几个命令不执行也可解决问题,,,,,

brctl delbr docker0
docker -d

systemctl restart docker

环境变量

0.配JDK11的原因:Thingsboard项目要求
1.JDK 1.8 ,JDK 11 配置

step1:官网下载jdk 1.8,jdk 11
step2:一路next,jdk 1.8和jdk 11的安装路径如下,画红圈的地方
(JDK 11 install过程中会配置环境变量,可以将install产生的环境变量删除)
在这里插入图片描述
step3:配置环境变量

此电脑----属性----高级系统设置--------环境变量------新建
新建变量:JAVA_HOME,JAVA_HOME8
------将JAVA_HOME,JAVA_HOME8添加到Path
在这里插入图片描述
%JAVA_HOME%\bin;%JAVA_HOME8%\bin;
分号;是每个变量的分隔符,第一个前面不用加
step4:测试
在cmd窗口输入:java -version ,javac -version
在这里插入图片描述
JAVA_HOME是JDK 11,所以测试结果是11。
2.maven 配置
step1:找到maven位置,因为我先安的idea,所以maven是去本地仓库位置找
D:\Program Files\IntelliJ IDEA 2021.2\plugins\maven\lib\maven3
step2:添加系统变量:MAVEN_HOME
在这里插入图片描述
step:3 将MAVEN_HOME添加到Path
;%MAVEN_HOME%\bin;
注意:放后面,放中间,则前后都有分号 ;
在这里插入图片描述
step:4 测试

在这里插入图片描述
maven对应JDK 11
注意:
当系统安装了多个版本的jdk, 并且 环境变量中配置了多个诸如 JAVA_HOME, JAVA_7_HOME, JAVA_8_HOME时,Maven中对应的JDK版本是根据 环境变量中 配置的 JAVA_HOME 那个路径所指向的版本 , 并不是实际系统默认的jdk版本

所以如果想要Maven使用哪个版本的jdk, 需要设置 JAVA_HOME (即使它不是系统默认的jdk版本, 反之,如果系统默认的jdk版本不是JAVA_HOME配置的那个, Maven还是会去寻找 JAVA_HOME对应的版本,这是哪个大佬写的,忘记了,,,)

step5:彩蛋
虽然配置的JAVA_HOME是JDK11
但是,关机,重启之后,
java -version却显示的是JDK 8,
mvn -version也是JDK 8
此时,重新到环境变量里打开,确定,一下
java -version就显示的是JDK 11了
mvn -version 就是JDK 11
,,,,我也不知道为啥会这样,,,

step6: 这个maven的JDK版本是全局配置,项目中还可以通过pom.xml指定JDK版本

step7:中央仓库比较慢,建议换成aliyun的
在这里插入图片描述
记事本打开setting.xml,添加

<!--阿里云镜像加速-->
<mirror>      
       <id>nexus-aliyun</id>    
       <name>nexus-aliyun</name>  
       <url>http://maven.aliyun.com/nexus/content/groups/public</url>    
         <mirrorOf>central</mirrorOf>      
</mirror> 

一些bug

1.从gitlab 拉取thingsboard项目
在git bash执行: cd D:\git\java
将git工作目录切换到D:\git\java
在git bash执行:git clone git@你的ip:group名/thingsboard.git
则将thingsboard下拉到D:\git\java
2: 在 IDEA 中complie,install,run 项目thingsboard
step1:IDEA加载thingsboard
用IDEA打开(File-----Open,D:\git\java\thingsboard) thingsboard
在这里插入图片描述
打开过程有些慢

step2:在terminal端执行mvn clean compile报错

[ERROR] Failed to execute goal com.github.eirslett:frontend-maven-plugin:1.0:npm (npm install) on project ui: Failed to run task: 'npm install' failed. (error code 1) -> [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 <goals> -rf :ui

看大佬们说是,github太慢的问题,所以要对DNS进行代理

首先,用管理员身份打开cmd,执行notepad hosts
在这里插入图片描述
添加以下配置
在这里插入图片描述
IP会变,所以会找到最新的IP

其次,修改DNS
在这里插入图片描述
DNS修改如下
在这里插入图片描述
改完后,再次mvn clean compile,还报这个错误。
在terminal 执行: npm config set registry http://registry.cnpmjs.org (淘宝的会报json错误)
过程有点慢

接着执行:cnpm install
此时,会报内存不足的错误
执行以下命令:
cnpm install -g increase-memory-limit
npx cross-env LIMIT=4096 increase-memory-limit
(这两个命令,应该是都要执行,建议按顺序执行,因为我忘记到底执行的哪个了)
到这一步,再执行yarn install命令,就不会再报这个错了

最后,mvn clean compile,仍会报错,因为在模块web-ui(模块msa下)的pom.xml中存在
在这里插入图片描述
只执行mvn clean compile,不会对ui-ngx打包,所以不能unpack
故,执行step3

step3:在terminal端执行mvn clean install报错
在terminal端执行mvn clean install,test过程报错

//类似这种的内存错误
The forked VM terminated without saying properly goodbye

原因:未知,其他博客建议添加如下命令,但并不管用,但跟这个插件有关,
在这里插入图片描述
因此,我最后执行的命令是:mvn clean install -DskipTests

step4: 利用批处理文件,给postgresql添加数据表
step3执行之后,路径D:\git\java\thingsboard\application\target\windows\下产生install_dev_db.bat文件;
到该路径下打开cmd,执行install_dev_db.bat
不出错,则数据表添加完成
**注意:**用cmd打开,而不是直接打开的原因:cmd窗口在报错情况下不闪退,可查看报错日志。

若报错:ERROR: syntax error at or near “PROCEDURE” ,则提高postgresql的版本,我用的9.6就出错了,12.8的可以

step5:运行以下主配置类

在这里插入图片描述
若报错:Error running ThingsboardServerApplication. Command line is too long
则作以下配置
在这里插入图片描述
之后访问localhost:8080即可出现以下界面
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值