我正在使用Active MQ来集成测试我的应用程序。我在spring配置中定义了一个active-mq代理,如下所示:
<amq:broker useJmx="false"
persistent="false"
deleteAllMessagesOnStartup="true"
useShutdownHook="true">
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:0"/>
</amq:transportConnectors>
</amq:broker>
但它似乎忽略了persistent=false
,每次我运行测试套件时,我都会得到一个名为activemq-data
的文件夹
我需要做什么才能使活动MQ不是持久的?
发布于 2010-10-15 01:22:56
除了添加persistant="false“之外,解决方案是在您的activemq.xml中注释掉以下行:
<persistenceAdapter>
<kahaDB directory="${activemq.base}/data/kahadb"/>
</persistenceAdapter>
另外,在这一点上清除你的数据目录也没什么坏处...
发布于 2010-06-18 14:02:08
我会使用ActiveMQ 5.3.2 -这看起来像是一个更老的版本。顺便说一句,您不需要使用deleteAllMessagesOnStartup -因为您不会使用持久消息存储库
干杯,
抢夺
发布于 2011-04-08 22:49:08
即使在注释持久适配器时,它也会创建该目录。但是,当broker URL中的值为et broker.persistent=false
时,持久性将被禁用。我仍然想知道为什么,在这一点上,这是在5.4.2中。
https://stackoverflow.com/questions/3062207
复制相似问题