ActiveMQ 使用IBM JDK 时,用 bin/activemq.bat启动时会找不到 logging.properties 文件,但是还能启动。
注册成 windows 系统服务时,无法启动:
FATAL | wrapper | 2013/04/27 09:56:05 | Unable to execute Java command.
FATAL | wrapper | 2013/04/27 09:56:05 | "C:\Program Files\ibm-java-x86_64-60\bin\java"…… start
FATAL | wrapper | 2013/04/27 09:56:05 | Critical error: wait for JVM process failed
方法 1 :继续使用 IBM
JDK
该错误可以通过修改 ACTIVEMQ_HOME/bin/activemq.bat 来解决,我们可以在 conf 目录下添加一个 logging.properties :
清单 1. 修改activemq.bat中的logging.properties 路径
if "%ACTIVEMQ_OPTS%"
== "" set ACTIVEMQ_OPTS=-Xmx512M
-Dorg.apache.activemq.UseDedicatedTaskRunner=true -Djava.util.logging.config.file=%
ACTIVEMQ_BASE%/conf/logging.properties
清单 2. logging.properties 内容
handlers = java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=INFO java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
.level=INFO#
方法 2 :指定其他版本 JDK
修改 %ActiveMQ_HOME%\bin\activemq.bat
在 if exist "%HOME%\activemqrc_pre.bat" call "%HOME%\activemqrc_pre.bat"前面加上
set JAVA_HOME=C:\jdk1.6.0_37
if exist "%HOME%\activemqrc_pre.bat" call "%HOME%\activemqrc_pre.bat"
该方法注册成 windows 系统服务后又失效了,
此时需要修改 %ActiveMQ_HOME%\bin\win32 下的wrapper.conf 文件
wrapper.java.command=java 改为:
set.JAVA_HOME=C:/jdk1.6.0_37
wrapper.java.command=%JAVA_HOME%/bin/java