相继上一篇,thingsboard的二次开发环境配置和简单的logo替换
一、二次开发环境配置
1、idea安装及辅助插件下载
官方推荐使用的开发工具是IntelliJ IDEA,简称idea
就是这个东西,这里先介绍一下idea(以下简介从度娘复制):
IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Python等少数语言。
详细信息及操作标准自行查找,这里不做解释。
安装idea以后,我们下载maven,我这里用的是apache-maven-3.5.4,你们配置的时候也可以使用更高版本。下载以后将其配置到idea中,这里怎么配置请自行查看api,基本跟eclipse的配置一样。
同理,我们下载Tomcat工具,这里我没用idea自带的Tomcat,配置了我自己下载的,idea自带的也可以用,不过,我自己配置的放心一点,我用的是apache-tomcat-7.0.22,高版本这里我没测试是否可用,你们也可以自行测试一下
2、导入thingsboard项目
双击idea安装后的运行文件:
下面这里需要选择jdk,我们这里不能使用自带的jdk,需要下载一个1.8版本的jdk,别问为什么
等待项目加载完成,这里不要做多余的操作。
在等待期间,我们做俩热部署的bat文件(好多人在我们QQ群里聊这个热部署的问题,这里还请大家以后多看看官方文档,里边有提到这个问题)
首先,我们做一个8080后台服务器的快捷启动文件:
在TB 的根目录底下我们创建一个“1-start-server-side-on-8080.bat” 文件,文件内容如下:
java -jar application/target/thingsboard-2.3.1-boot.jar
接下来我们创建一个UI的热部署启动3000端口的文件:
同理,我们创建一个“2-start-ui-on-port-3000.bat”文件,内容如下:
cd ui
mvn install -P npm-start
接下来我们看看idea是否已经将TB项目加载过去了:
3、在idea中启动TB项目
上一步我们将TB导入idea中,现在我们需要先在idea中打包它。
点击这个按钮:
执行结束后,下面的消息控制台中会显示好多的警告,这些警告不会影响项目运行,这里我们忽略它。
忘说一件事了。。。。。。。2.3.1官方版本有个BUG:
这个java文件路径:application/src/main/java/org/thingsboard/server/config/ThingsboardMessageConfiguration.java
记得修改一下,不然打包完以后会报错。
没报错说明打包正常。
打开以下目录结构:
这两个文件,其中一个是安装,一个是启动服务。我们运行下面这个启动服务:
运行结束:
我们打开浏览器,访问8080端口:
这里关于数据库,我们需要注意:
1、当已经安装过tb,并在后台启动过TB服务的,需要停掉以后,再运行idea中的TB,不然8080端口会被占用
2、在这边运行前,修改过源码中的数据库的,需要在运行前,先将数据表生成(这里怎么生成数据及数据表,请移步官网查看教程,不做过多解释)以后再运行idea
吃饭去了,下午再写,另开一篇
打个广告:我原先在的那个QQ退了,现在在新的QQ群
上面这个,主要接单物联网项目,及一些TB的二次开发交流,有项目需要做的可以进群联系群主(我不是群主)
一些入门问题不要私聊我。。。。。表示我有时候也很忙
QQ群号:726442610
群名称:China Thingsboard