1、在本地下载源码
在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查看如下:
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
4、源码调试
在idea File – Project Structure – Modules 下选择 activemq-console为其添加解压包中lib里的jar包。(lib中的包全部导入)
如何启动:
activemq-console目录结构:
给主函数加启动参数:
其中 start xbean:conf/activemq.xml 可以根据需要自定义
到这一步就可以启动main函数进行启动和调试了。
登陆浏览器访问 http://localhost:8161/admin
账号密码默认都是admin
登陆后如下:
5、需要注意的问题
使用jdk10和jdk9要注意jdk\lib中没有tools.jar 和 dt.jar包,解决方法是重新安装jdk,将jdk目录与jre目录设置为不同即可。(没有试过,大家可以测试下)
源码导入idea,如果模块目录颜色是灰色的话,需要加入到maven项目中重新构建下。正常导入后是这样,目录下面有颜色代表已经识别为maven项目: