天天看點

Activemq源碼、編譯、導入idea、源碼調試總結

1、在本地下載下傳源碼

Activemq源碼、編譯、導入idea、源碼調試總結
Activemq源碼、編譯、導入idea、源碼調試總結

在GitHub官網搜activemq,找到排名第一的,并打開,如圖所示,拷貝url位址。

activemq托管位址:https://github.com/apache/activemq.git
切換到git bash下,輸入指令:
mkdir activemqSource
cd activemqSource
git init
git clone https://github.com/apache/activemq.git
執行成功後,會生成activemq目錄
此時下載下傳的是master 分支,可以通過branch指令檢視分支詳情
git branch -a
選擇需要切換的分支,我切換的是activemq-5.15.x,指令如下:
git checkout -b activemq-5.15.x origin/activemq-5.15.x
執行成功後,用git branch -a檢視如下:

           
Activemq源碼、編譯、導入idea、源碼調試總結

2、編譯源碼

這裡要注意一個問題,因為預設安裝jdk10和jdk9後jdk/lib中沒有tools.jar 和 dt.jar包,這會導緻編譯源碼會報錯。解決方法:重新安裝jdk,将jdk目錄與jre目錄設定為不同即可。

本文使用環境為jdk8

進入下載下傳生成的activemq目錄下,執行指令:

mvn clean install -Dmaven.test.skip=true
編譯成功後,執行指令:
mvn idea:idea(如果是導入eclipse,轉成eclipse即可)
成功後已經轉成idea項目
此時在activemq/assembly/target目錄下會生成
apache-activemq-5.15.7-SNAPSHOT-bin.tar.gz
apache-activemq-5.15.7-SNAPSHOT-bin.zip
其中:
tar.gz 對應linux和ox
zip 對應windows
解壓對應包以備後用,解壓路徑随意。
           

3、導入idea

Activemq源碼、編譯、導入idea、源碼調試總結
Activemq源碼、編譯、導入idea、源碼調試總結
Activemq源碼、編譯、導入idea、源碼調試總結

4、源碼調試

Activemq源碼、編譯、導入idea、源碼調試總結

在idea File – Project Structure – Modules 下選擇 activemq-console為其添加解壓包中lib裡的jar包。(lib中的包全部導入)

Activemq源碼、編譯、導入idea、源碼調試總結
Activemq源碼、編譯、導入idea、源碼調試總結

如何啟動:

activemq-console目錄結構:

Activemq源碼、編譯、導入idea、源碼調試總結

給主函數加啟動參數:

Activemq源碼、編譯、導入idea、源碼調試總結

其中 start xbean:conf/activemq.xml 可以根據需要自定義

到這一步就可以啟動main函數進行啟動和調試了。

Activemq源碼、編譯、導入idea、源碼調試總結

登陸浏覽器通路 http://localhost:8161/admin

Activemq源碼、編譯、導入idea、源碼調試總結

賬号密碼預設都是admin

登陸後如下:

Activemq源碼、編譯、導入idea、源碼調試總結

5、需要注意的問題

使用jdk10和jdk9要注意jdk\lib中沒有tools.jar 和 dt.jar包,解決方法是重新安裝jdk,将jdk目錄與jre目錄設定為不同即可。(沒有試過,大家可以測試下)

源碼導入idea,如果子產品目錄顔色是灰色的話,需要加入到maven項目中重新建構下。正常導入後是這樣,目錄下面有顔色代表已經識别為maven項目:

Activemq源碼、編譯、導入idea、源碼調試總結