在 Java 中内嵌了一个 ActiveMQ 服务器 broke,我们可以使用这个小型的服务器来临时充当调试使用的 ActiveMQ 服务器,下面以一个实例来介绍如何使用。
依赖包如下:
<!-- activemq 所需的 jar 包配置 -->
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-all</artifactId>
<version>5.15.9</version>
</dependency>
<dependency>
<groupId>org.apache.xbean</groupId>
<artifactId>xbean-spring</artifactId>
<version>3.16</version>
</dependency>
<!-- 内嵌的 borker 需要依赖 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.0</version>
</dependency>
代码实例如下:
public class EmbeddedBroker {
public static void main(String[] args) throws Exception {
// 创建 broker 服务器
BrokerService brokerService = new BrokerService();
// 设置使用 Jmx
brokerService.setUseJmx(true);
// 绑定服务地址
brokerService.addConnector("tcp://localhost:61616");
// 启动服务器
brokerService.start();
}
}
启动后在 ides 的终端 terminal 输入 jps 查看启动是服务:
D:\GitRepository\JavaDemo>jps -l
12836
9540 sun.tools.jps.Jps
600 org.jetbrains.jps.cmdline.Launcher
11404 org.jetbrains.idea.maven.server.RemoteMavenServer
5132 com.wang.EmbeddedBroker
注意:这里必须以 main 的方式启动,不能使用 junit 的 @Test 来启动,因为测试单元启动会直接退出!