2010-06-17 95 views
1

我正在使用Active MQ來集成測試我的應用程序。我已經在Spring配置定義的活性,MQ代理,像這樣:ActiveMQ忽略persistent = false

<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

怎麼辦我需要這樣做,Active MQ不是持久的?

回答

0

我會使用ActiveMQ 5.3.2 - 這看起來像一箇舊版本。 順便說一句 - 你不需要deleteAllMessagesOnStartup - 因爲你不會使用持久性消息存儲

歡呼聲,

羅布

+0

我現在使用5.3.2並得到相同的結果。 (你怎麼知道我沒有,春天的環境不會改變?) – 2010-06-22 07:34:37

1

的解決方案,此外還加入了持續性=「假」是註釋掉以下行中您activemq.xml中:

<persistenceAdapter> 
      <kahaDB directory="${activemq.base}/data/kahadb"/> 
</persistenceAdapter> 

而且,沒有在這點傷清除數據目錄...

0

即使在評論持久適配器時,它也會創建該目錄。但是,代理URL中的et broker.persistent=false的持續時間會被禁用。我仍然想知道爲什麼,在這一點上,這是在5.4.2。