摘要: activeMQ安装及启动
- 从activeMQ最新版本下载下载最新版本
- 解压到电脑上的任何一个文件夹,此处以D:\work\java\apache-activemq-5.11.1为例
- 进入到D:\work\java\apache-activemq-5.11.1\bin\win64(我的电脑是64位的win7,所以进到win64这个目录)
- 运行批处理命令activemq.bat(用命令行运行比较好,有异常会停留在黑窗,如果双击运行一旦有异常窗口会自动关闭)
- 启动成功后窗口会显示以下信息:
- 用浏览器访问http://localhost:8161/admin/即可,黑认用户名密码是admin/admin
附:
我的电脑上启动时会报以下异常:
2015-05-26 11:35:04,100 | ERROR | Failed to start Apache ActiveMQ ([localhost, ID:Xmadmin_Root-PC-56117-1432611303818-0:1], java.net.URISyntaxException: Illegal character in hostname at index 12: ws://Xmadmin_Root-PC:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600) | org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain
起初以为是61614端口被战胜,但使用 netstat -ano查看后发现没有被占用,然后发现这边的Xmadmin_Root-PC正好是我的机器名,再加上异常描述大概意思是有不合法的字符,打开conf目录下的activemq.xml文件,发现有以下配置:
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
把这些配置中的ip改为127.0.0.1,如下:
<transportConnector name="openwire" uri="tcp://127.0.0.1:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
<transportConnector name="amqp" uri="amqp://127.0.0.1:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
<transportConnector name="stomp" uri="stomp://127.0.0.1:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
<transportConnector name="mqtt" uri="mqtt://127.0.0.1:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
<transportConnector name="ws" uri="ws://127.0.0.1:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
再启动就成功了,怀疑是因为C:\Windows\System32\drivers\etc\hosts文件中未配置0.0.0.0对应的域名导致程序会使用默认的主机名,而域名是不能下划线导致的。