**
**
摘要: 此文档为ThingsBoard开发环境配置文档,安装系统为win10 64位。
主要需要一下几步:
注:JDK我之前安装的是JDK10.0.2版本的,但是ThingsBoard要求必须是1.8版本的,所以我又安装了1.8版本的,需要配置环境。
jdk的下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
因为我现在操作的电脑是win10 64位,所以选择如下:
下载好后接直安装,全部按默认安装,对于不熟悉Java的同学先别着急修改路径,等以后自己会改了再去修改。。。。。(有些安装的配件不能安装在中文路径底下的问题,所以不要瞎改,哪怕改也弄成英文路径)
安装好以后,会在C:\Program Files底下新增一个java文件,如下:(此教程采用默认路径,你也可以修改保存路径,但是一定确保英文,并且你要记住你安装的位置)
然后配置系统环境变量:
①电脑桌面上鼠标右击 此电脑 → 属性 → 高级系统设置 → 高级 → 环境变量
②新建 系统变量JAVA_HOME,变量值填写为jdk的安装目录(JAVA_HOME:C:\Program Files\Java\jdk1.8.0_91),写好后点击确定。
③系统变量→新建 CLASSPATH 变量
变量值填写 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
(变量值前面有点号和分号,后边结尾也有分号)
或者可以写成“.;%JAVA_HOME%\lib”(注意最前面有一点)
④系统变量→Path 变量→编辑
在变量值最后输入 %JAVA_HOME%\bin(注意原来Path的变量值末尾有没有“;”号,如果没有,先输入“;”号再输入上面的代码).
注意:分号都是英文得分号。
系统变量配置完毕!
⑤现在检验一下是否配置成功
运行cmd分别输入java, javac, javadoc。终端都显示内容,才能说明JDK安装成功。
输入 java -version (java 和 -version 之间有空格)
如图所示 显示版本信息
maven下载路径:http://maven.apache.org/download.cgi
这个不需要管maven版本,我安装的是3.6.1.安装即为傻瓜安装
下面需要配置环境以及存储路径:
①配置Maven环境变量,如上jdk配置一样
在计算机–属性–高级系统设置–环境变量–系统变量–新建
新建变量:
变量名:M2_HOME
变量值:C:\Program Files\apache-maven-3.3.9 (你的maven路径)
找到Path在环境变量值尾部加入:;%M2_HOME%\bin;
(注意原来Path的变量值末尾有没有“ ; “号,如果没有,先输入” ; “号再输入上面的代码)
系统变量配置完毕!
②现在检验一下是否配置成功
运行cmd输入mvn -v ,显示版本信息表示配置成功
③修改本地仓库位置
Maven会将下载的类库(jar包)放置到本地的一个目录下(一般默认情况下maven在本机的仓库位于C:\我的文档中.m2.\repository),如果想重新定义这个目录的位置就需要修改Maven本地仓库的配置:
1、在自己喜欢的位置创建文件夹,此处本人创建的位置是(C:\Program Files\Maven\MavenRepo)
2、在安装Maven的目录下找到conf文件夹,在文件夹中找到settings.xml文件,复制settings.xml文件放于C:\Program Files\Maven,如下图所示:
并修改settings.xml文件
在安装Maven的目录下找到conf文件夹,在文件夹中找到settings.xml文件,更改默认的仓库位置如下图所示:(注意两个地方的settings.xml都要修改)
依据该配置,Maven就会将下载的类库保存到C:\Program Files\Maven\MavenRepo中。
nodejs版本推荐6.9.5
请在https://nodejs.org/dist/ 此地址下载相应安装包
注意:Linux上安装Node.js需要安装Python 2.6 或 2.7,不建议安装Python 3.0以上版本。
双击下载的安装包,一路Next,检测PATH环境变量是否配置了Node.js,点击开始=》运行=》输入"cmd" => 输入命令"path",输出如下结果
我们可以看到环境变量中已经包含了C:\Program Files\nodejs\,检测nodejs版本,输入node -v,可以看到nodejs版本。
说明你已经成功安装了Node.js
note:node -v检测当前的操作系统的nodejs版本
双击安装程序,按默认选项安装即可
选择组件
(1)图标组件(Addition icons) : 选择是否创建桌面快捷方式。
(2)桌面浏览(Windows Explorer integration) : 浏览源码的方法,使用bash 或者 使用Git GUI工具。
(3)关联配置文件 : 是否关联 git 配置文件, 该配置文件主要显示文本编辑器的样式。
(4)关联shell脚本文件 : 是否关联Bash命令行执行的脚本文件。
(5)使用TrueType编码 : 在命令行中是否使用TruthType编码, 该编码是微软和苹果公司制定的通用编码。
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功。
安装完成后,还需要最后一步设置,在命令行输入如下:
$ git config --global user.name “Your Name”
$ git config --global user.email [email protected]
(使用eclipse编译时会有问题,建议使用IDEA)
note: 请确保你在你的系统中安装了以上依赖工具!
安装教程很简单,如果不会请自己百度。
从官网仓库https://github.com/thingsboard/thingsboard/ 拉取thingsboard项目。然后切换到最新的分支release2.3(目前最新的是2.4.1,该教程用的是2.3)。
从官方仓库 https://github.com/thingsboard/thingsboard/ 拉取thingsboard项目,Maven 会下载依赖包,可能会花费一些时间,耐心等待下。
下面是给不会使用git的朋友的操作:
1)新建一个文件夹,我这里取名为ThingsBoard;
2)进入文件夹,鼠标右键选择git Bash ;
3)输入git init,生成.git文件,如果没有可能是隐藏了,没有关系;
4)在git bash中输入git clone https://github.com/thingsboard/thingsboard 。
打包之前,我们需要屏蔽掉LICENSE检测,不然的话会报一连串的错误。
我们切换到拉下来的代码的根目录,编辑pom.xml文件:
找到这个plugin,并且整个plugin注掉:
然后我们将拉下来的代码进行打包,生成可以运行的thingsboard项目,在你拉取的thingsboard项目根目录下打开cmd,运行以下命令:
mvn clean install -Dmaven.test.skip=true
以上命令中,我们跳过了test模块,因为这个模块一般都有问题,因为项目不需要编译它,所以忽略掉
note: 编译时间超长,如果一次不行,那就多次,只能这么说!
下面是几个我在编译打包时出现的错误。
(1)错误1:Failed to execute goal
org.apache.maven.plugins:maven-assembly-plugin:Cannot add 某一文件。 这个
问题的主要原因是该文件被认为是木马文件,软件管家把他拦截了,在之后我把该文件恢复了,就可以执行了。
(2)错误2: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile
(default-compile) on project shopweb-plugin-abm-customer: Compilation failure: Compilation failure: 这个是由于JDK的版本问题。必须是1.8,其他的都不行。
(3)错误3:Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean (default-clean) on project ****-web: Failed to clean project: Failed to delete E:\target\tomcat\logs\access_log.2016-03-21 -> [Help 1]
这个是由于上次运行的Java™ Platform SE binary未关闭,在任务管理器中关闭了就可以了。
编译成功之后会出现所有组件都是successful的字样。
OK,打包编译成功,查看一下thingsboard\application\target目录,若有以下内容就说明打包正确了。
双击idea安装后的运行文件:
下面这里需要选择jdk,我们这里不能使用自带的jdk,需要下载一个1.8版本的jdk,亲测jdk10版本的java不可以:
等待项目加载完成,这里不要做多余的操作。
在等待期间,我们做俩热部署的bat文件
首先,我们做一个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项目加载过去了:
项目全部加载进来之后,你需要首先配置一些内容。
(1)配置jdk
一般会在项目初始导入时就配置了,但是如果没有,就在此处再次配置。
点击左侧标签页SDKs选项,再点击左上角“+”,选择JDK;
在弹出框选择JDK安装路径,点击OK即可配置成功
下图可以看到JDK已经在IDEA中配置好了
(2)配置支持es6语法
配置好jdk后会发现代码还是有红线,这时候还需改变一下设置支持es6语法
(1)安装Lombok
File -> Settings -> Plugins,搜索插件lombok。点击安装即可
(2)安装Protobuf
安装步骤同上。
做好以上步骤,当然此时运行还是无法运行成功的!因为没有数据源(也就是数据库,包括关系,非关系数据库)啊!
(1)关系数据库: postgresql(推荐使用9.x版本)
上述配置完毕之后,就可以编译启动项目了。
现在我们需要先在idea中打包它,点击这个按钮:
执行结束后,下面的消息控制台中会显示好多的警告,这些警告不会影响项目运行,这里我们忽略它。
忘说一件事了。。。。。。。2.3.1官方版本有个BUG:(加上public)
这个java文件路径:application/src/main/java/org/thingsboard/server/config/ThingsboardMessageConfiguration.java
记得修改一下,不然打包完以后会报错。
没报错说明打包正常。
打开以下目录结构:
这两个文件,其中一个是安装,一个是启动服务。我们运行下面这个启动服务:
运行结束:
在这个过程中出现spring的错误问题,是由于没有修改thingsboard,yml文件导致的。(我的是)也有可能是其他原因。具体问题具体分析。
出现上述界面之后,就说明已经编译成功了。
我们打开浏览器,访问8080端口:(http://localhost:8080/login)
用户名:[email protected]
密码为:sysadmin,
进入以后 大功告成!
另外,如果想要以租户登录([email protected])登录,需要首先进入首页,然后进入租户管理,创建一个租户,以租户管理员登录即可。
当初被租户登录折磨好长时间,现在分享给大家,希望对刚接触物联网的朋友有帮助!