自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

聊聊開(kāi)源 IoT平臺(tái)ThingsBoard3.3.4源碼編譯問(wèn)題記錄

物聯(lián)網(wǎng)
最近ThingsBoard相關(guān)項(xiàng)目部署在某央企云平臺(tái)上,該云平臺(tái)安全機(jī)制實(shí)時(shí)檢查軟件漏洞,發(fā)現(xiàn)漏洞限期整改,否則關(guān)停服務(wù)器。ThingsBoard源碼中引用300多個(gè)第三方j(luò)ar包,經(jīng)常會(huì)有組件出現(xiàn)漏洞,靠等待官方升級(jí)根本來(lái)不及。只能自己靠自己源代碼編譯打包發(fā)布,編譯源碼一大堆的坑,把遇到的問(wèn)題總結(jié)記錄下來(lái)供大家參考。

ThingsBoard 是一個(gè)基于Java的開(kāi)源的物聯(lián)網(wǎng)平臺(tái),用于數(shù)據(jù)收集、處理、可視化和設(shè)備管理。它使用物聯(lián)網(wǎng)行業(yè)的標(biāo)準(zhǔn)協(xié)議(MQTT、CoAP和HTTP)實(shí)現(xiàn)設(shè)備連接,并支持云和本地部署。因?yàn)槭诸^有項(xiàng)目用這個(gè)開(kāi)源產(chǎn)品當(dāng)作物聯(lián)網(wǎng)數(shù)據(jù)采集傳輸代平臺(tái),用來(lái)代替以前公司自己開(kāi)發(fā)的的數(shù)據(jù)采集傳輸軟件(不穩(wěn)定)。根據(jù)近兩年來(lái)的項(xiàng)目實(shí)際使用經(jīng)驗(yàn),ThingsBoard是一款很優(yōu)秀的產(chǎn)品,其高連接性,可靠性,穩(wěn)定性,可伸縮性,可擴(kuò)展性等指標(biāo)都可以秒殺我們公司自研的基于c++的那套系統(tǒng)。

最近ThingsBoard相關(guān)項(xiàng)目部署在某央企云平臺(tái)上,該云平臺(tái)安全機(jī)制實(shí)時(shí)檢查軟件漏洞,發(fā)現(xiàn)漏洞限期整改,否則關(guān)停服務(wù)器。ThingsBoard源碼中引用300多個(gè)第三方j(luò)ar包,經(jīng)常會(huì)有組件出現(xiàn)漏洞,靠等待官方升級(jí)根本來(lái)不及。只能自己靠自己源代碼編譯打包發(fā)布,編譯源碼一大堆的坑,把遇到的問(wèn)題總結(jié)記錄下來(lái)供大家參考。

1、Maven配置問(wèn)題

因?yàn)門(mén)hingsBoard在編譯過(guò)程中需要依賴很多國(guó)外的包,那么需要外網(wǎng)才能連接,建議連接到外網(wǎng)。如果公司設(shè)置內(nèi)有代理服務(wù)器,別忘了setting.xml配置代理訪問(wèn)。

一般情況下,使用官方鏡像更新依賴包,網(wǎng)速不穩(wěn)定,可將Maven鏡像源設(shè)置為淘寶的,在maven安裝包目錄下找到settings.xml設(shè)置,如下:

<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<mirrorOf>central</mirrorOf>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>

建議同時(shí)把npm也設(shè)置為淘寶鏡像。

同上,網(wǎng)速不好npm過(guò)程中也會(huì)下載失敗,這是導(dǎo)致很多人編譯失敗的原因,所以我們?cè)谶M(jìn)行編譯之前,也將npm替換為淘寶鏡像:

npm install -g mirror-config-china --registry=http://registry.npm.taobao.org        #使用淘寶鏡像
npm config get registry #查詢當(dāng)前鏡像
npm config rm registry #刪除自定義鏡像,使用官方鏡像
npm info express

編譯時(shí)把系統(tǒng)代理服務(wù)器設(shè)置或IE代理服務(wù)器設(shè)置中的代理設(shè)置取消,經(jīng)常導(dǎo)致 ThingsBoard Server UI模塊編譯失敗。

2、緩存、或進(jìn)程未關(guān)閉、或文件被占用導(dǎo)致編譯出錯(cuò)

每次編譯失敗進(jìn)行二次編譯時(shí),要清理緩存,并殺死遺留進(jìn)程

執(zhí)行下面命令,殺死遺留進(jìn)程

taskkill /f /im java.exe

或者IDEA Maven工具進(jìn)行清理。

在項(xiàng)目編譯過(guò)程中要copy文件,如果node進(jìn)程或其它進(jìn)程沒(méi)有關(guān)閉,也會(huì)報(bào)各種類(lèi)型的錯(cuò)誤信息。進(jìn)入報(bào)錯(cuò)的模塊,單獨(dú)編譯,添加參數(shù) -X或-e 查詢出錯(cuò)的具體信息,根據(jù)錯(cuò)誤提示進(jìn)行處理。

mvn clean install -DskipTests=true -X 或-e

最簡(jiǎn)單的方式就是重啟電腦,建議重啟。

3、軟件版本問(wèn)題,這是最常見(jiàn)的問(wèn)題

Java版本,JDK版本必須11以上版本,我用的版本是11.0.18,最開(kāi)始用的JDK11_4335520這個(gè)版本編譯時(shí)發(fā)現(xiàn)各種錯(cuò)誤。

再就是Node版本,我用的v16.15.1,NPM版本號(hào),8.5.0

最后時(shí)yarn版本,v1.22.9。

node和yarn版本最好跟模塊pom文件設(shè)置版本中保持一致。

<executions>
<execution>
<id>install node and yarn</id>
<goals>
<goal>install-node-and-yarn</goal>
</goals>
<configuration>
<nodeVersion>v16.15.1</nodeVersion>
<yarnVersion>v1.22.17</yarnVersion>
</configuration>
</execution>
<execution>
<id>yarn install</id>
<goals>
<goal>yarn</goal>
</goals>
<configuration>
<arguments>install</arguments>
</configuration>
</execution>
<execution>
<id>yarn pkg</id>
<goals>
<goal>yarn</goal>
</goals>
<phase>compile</phase>
<configuration>
<arguments>run pkg</arguments>
</configuration>
</execution>
</executions>

注意:

編譯項(xiàng)目跟網(wǎng)速和電腦配置有關(guān),最好連接上外網(wǎng)進(jìn)行編譯,我這里完整編譯大概需要20多分鐘。

總結(jié)

在編譯Thingsboard 3.3.4過(guò)程中遇到了各式各樣的問(wèn)題,編譯過(guò)程很慢,50多個(gè)模塊花費(fèi)了幾乎一整天的時(shí)間才編譯成功,在此總結(jié)一下,也希望能幫助到更多朋友。

責(zé)任編輯:武曉燕 來(lái)源: 今日頭條
相關(guān)推薦

2014-05-06 09:44:54

MySQL LogsMySQL

2025-02-05 09:33:34

2012-05-03 10:13:56

FlexSSHJava

2019-12-25 07:56:03

物聯(lián)網(wǎng)平臺(tái)物聯(lián)網(wǎng)IOT

2015-07-15 10:37:10

IOS用戶行為統(tǒng)計(jì)代碼

2017-06-12 16:10:05

MySQL表名

2020-05-06 22:07:53

UbuntuLinux操作系統(tǒng)

2022-06-05 23:31:28

ClionMySQL數(shù)據(jù)

2018-09-11 15:40:40

IoT設(shè)備測(cè)試

2011-10-28 13:26:09

Win7

2020-05-25 09:24:34

物聯(lián)網(wǎng)技術(shù)數(shù)據(jù)

2020-03-12 11:28:26

物聯(lián)網(wǎng)開(kāi)發(fā)IoT

2021-09-08 06:51:53

CountDownLa閉鎖源碼

2011-09-14 15:23:00

Android 2.2

2018-06-14 00:45:11

IoT物聯(lián)網(wǎng)IoT平臺(tái)

2017-09-26 15:27:57

開(kāi)源TiDB代碼

2022-11-30 21:32:23

開(kāi)源buildah工具

2023-12-04 11:17:20

2024-05-17 12:53:54

IOT網(wǎng)關(guān)物聯(lián)網(wǎng)平臺(tái)物聯(lián)網(wǎng)

2023-03-31 13:53:00

低代碼平臺(tái)選型
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)