ActiveMQ Artemis ha/replicated-failback示例执行是否成功?
ApacheMQ Artemis 复制故障转移示例构建失败问题解答
结论:测试未成功
尽管你观察到消息收发成功的输出,但最终mvn verify返回BUILD FAILURE,说明整个测试流程未通过,属于失败状态。
错误原因拆解
1. 端口绑定失败(AMQ229230)
ReplicatedFailbackStaticExample0-out:java.lang.IllegalStateException: AMQ229230: Failed to bind acceptor netty-acceptor to localhost:61616
该错误表明localhost:61616端口被占用,可能的原因:
- 之前运行的Artemis实例未彻底终止
- 其他本地应用占用了此端口
- 静态复制场景下多节点启动时,端口配置冲突
2. 空指针异常(NullPointerException)
Caused by: java.lang.NullPointerException at org.apache.activemq.artemis.jms.example.ReplicatedFailbackStaticExample.main (ReplicatedFailbackStaticExample.java:111)
结合你修改过默认管理员密码的操作,大概率是配置未同步更新:示例依赖的配置文件(如broker.xml、login.config等)中的密码未修改,导致程序无法完成认证或获取必要资源,触发空指针。
3. Maven构建失败
[INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31.059 s [INFO] Finished at: 2022-12-12T11:30:57-05:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.activemq:artemis-maven-plugin:2.27.1:runClient (runClient) on project replicated-failback-static: null: MojoFailureException -> [Help 1]
MojoFailureException是客户端执行目标出错的直接反馈,本质是前面的端口冲突、空指针等问题导致测试逻辑未正常完成。
修复建议
- 检查并释放
61616端口,或修改示例配置中各节点的端口参数避免冲突 - 同步更新所有相关配置文件中的管理员密码,确保示例程序能正常完成认证
- 彻底清理残留的Artemis进程后,重新执行
mvn verify
内容的提问来源于stack exchange,提问作者Jack BeNimble
相关产品推荐
相关产品推荐

