windows 下 Thingsboard 源码编译

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a_bcd_123/article/details/81563901

目录

一 源码的下载

二 源码的编译

让 node 运行起来

编译 API 组件

安装cassandra 数据库 

用 idea 打开项目

编译后运行验证


thingsboard 是一款优秀的物联网平台软件,具体介绍请登录 https://thingsboard.io/docs/getting-started-guides/what-is-thingsboard/ 查看, 赞美的话不多少,这里主要是编译代码,搭建debug 环境,这里的环境是指windows 环境、

一 源码的下载

 thingsboard 还在活跃中,本文采用的代码是截止到2018.8.10 的代码, 用tortoiseGit  clone 代码到本地目录即可

二 源码的编译

  • 让 node 运行起来

 代码clone 到本地后,在根目录下执行 mvn clean install 指令, 但很有可能会报错

   <modules>  	
        <module>netty-mqtt</module>
        <module>common</module>
        <module>rule-engine</module>
        <module>dao</module>
        <module>transport</module>
        <module>ui</module>
        <module>tools</module>
        <module>application</module>
    </modules>

  从pom.xml 中可以看出,整个项目会编译哪些模块,我在实际编译过程中编译UI 时会报错。 但其实thingsboard 采用的前后端分离的架构,这里我们不一定要UI 编译成功 , 只需要node 能够正常运行就好,这里我么先执行npm install, 然后运行 node ./server.s ,让node 服务器先运行起来, node 正常运行会监听 

node 正常运行后,依赖于后台的API 接口,接下来我们编译API

  • 编译 API 组件

接下来我们改造下pom.xml , 将 UI 屏蔽掉

 同时去掉 license 的检查 (将红圈的里代码删掉)

为了让API 组件快速编译,我们跳过 测试, 直接执行 mvn package -DskipTests, 编译完成后可以看到在application 的target 目录下看到以下生成的文件,这表明已经编译成功

  • 安装cassandra 数据库 

cassandra 安装请参考 https://thingsboard.io/docs/user-guide/install/windows/,安装完成后请用cqlsh.工具 导入 dao\src\main\resources\cassandra\schema.cql,  dao\src\main\resources\cassandra\system-data.cql 这两个CQL 文件

  • 用 idea 打开项目

  上面是直接用命令行的方式编译thingsboard, 但我们调试过程中需要用到ide,以便调试

从idea 直接open thingsboard的根目录,打开完成后可以看到如下结构

这里我们采用cassandra 数据库,将application.yml  第58行 DATABASE_TYPE 改为cassandra

同时将内置的数据库删掉

然后运行程序

如果一切正常,我们可以看到如下信息

编译后运行验证

   一切正常后,我们直接访问 http://localhost:8080/login, 然后输入用户名[email protected], 密码sysadmin 登录,如果正常则可看到如下界面,则表明我们已经编译成功

猜你喜欢

转载自blog.csdn.net/a_bcd_123/article/details/81563901