启动ActiveMQ的代理时遇到问题。我收到此错误:

错误BrokerService-临时存储限制为51200 mb ...

这是我已经知道的:


我知道您可以通过更改activemq broker xml配置文件来解决此问题,但是我遇到的问题是我不知道该文件在哪里。我正在使用Maven(m2eclipse扩展名)在Eclipse工作区中进行开发,因此无法在eclipse工作区文件夹中看到二进制文件。
由于某种原因,即使这是“警告”,我的经纪人也不再接收消息。我知道此错误是造成此问题的原因,因为如果我在另一台计算机上运行代码,它将按预期工作。 (另一台机器正在运行CentOS,如果相关,我在Windows上会遇到问题)


也许有一种方法可以在运行时更改此参数?

这是我启动经纪人的方式:

    BrokerService broker = new BrokerService();
    broker.addConnector(Constants.ACTIVEMQ_URL);
    broker.setPersistent(false);
    broker.start();


谢谢!

最佳答案

最好在broker.setPersistent(false)之后设置系统使用率。
万一更改顺序并且空间小于限制,则将出现另一条消息。

BrokerService broker = new BrokerService();
broker.addConnector(Constants.ACTIVEMQ_URL);
broker.setPersistent(false);
SystemUsage systemUsage = brokerService.getSystemUsage();
systemUsage.getStoreUsage().setLimit(1024 * 1024 * 8);
systemUsage.getTempUsage().setLimit(1024 * 1024 * 8);
broker.start();

10-07 12:05