前言
环境说明:
系统版本:centos7.3
activemq版本:apache-activemq-5.14.5
1、主机hostname有非法字符
修改主机hostname的时候,不小心写入了非法字符,如下划线“_”,导致服务启动失败。
报错内容:
2019-09-29 12:44:42,057 | ERROR | Failed to start Apache ActiveMQ ([localhost, ID:193_168_0_24-43901-1569732279834-0:1], java.net.URISyntaxException: Illegal character in hostname at index 8: ws://193_168_0_24:58083?maximumConnections=1000&wireFormat.maxFrameSize=104857600) | org.apache.activemq.broker.BrokerService | main
解决:
修改hostname就可以了。
修改hostname的方法:
1、方法一hostnamectl命令修改,不需要重启新开一个窗口就生效。
语法: hostnamectl set-hostname 新主机名2、方法二:修改配置文件 /etc/hostname 保存退出
修改完成之后需要重启生效3、方法三:临时修改主机名
hostname 新主机名
hostname命名规则可参考:
https://en.wikipedia.org/wiki/Hostname
2、配置文件IP配置不正确
配置文件conf/activemq.xml文件IP配置不正确,activemq启动失败。
报错:
2019-09-29 13:24:27,798 | ERROR | Failed to start Apache ActiveMQ ([localhost, ID:193-168-0-24-37400-1569734665712-0:1], java.io.IOException: Transport Connector could not be registered in JMX: java.io.IOException: Failed to bind to server socket: nio://193.169.0.24:50002?maximumConnections=1000&wireFormat.maxFrameSize=104857600 due to: java.net.BindException: Cannot assign requested address) | org.apache.activemq.broker.BrokerService | main
解决:
IP修改正确就好了。
不过网上也帖子提到关于“Cannot assign requested address”报错的其他原因和解决方法:
1、/etc/hosts解析异常,不能解析本机IP,需手动添加 127.0.0.1 localhost
2、/etc/hosts文件权限异常,修改为644