用于运行jmx控制台的.bat脚本:路径问题

时间:2015-11-12 18:37:12

标签: windows batch-file environment-variables jmx jconsole

我一直在努力为Windows创建一个.bat脚本来运行JMX控制台。我已经设法用一些技巧来做到这一点,但我必须做一些非常错误的事情,并且经过调查和谷歌搜索以及许多试验后我还没有找到解决方案。如果这个问题是重复的,我很乐意删除它。

这是我的原始脚本(尝试翻译我为Mac和Linux运行的脚本)

%JAVA_HOME%\bin\jconsole.exe -J-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;%JAVA_HOME%\lib\tools.jar;%MY_JCONSOLE_PATH%\opendmk_jmxremote_optional_jar-1.0-b01-ea.jar service:jmx:jmxmp://<host>:<port>

我遇到的问题:

    除非我执行jconsole.execd

    ,否则
  • $JAVA_HOME\bin似乎无法正常运行

  • 无法使脚本(或jconsole}了解%JAVA_HOME%\lib,我不得不添加新的环境变量

这是我解决上述问题的工作版本:

set MY_PATH=%cd%

cd %JAVA_HOME%\bin

jconsole.exe -J-Djava.class.path=%JAVA_BIN%\jconsole.jar;%JAVA_BIN%\tools.jar;%MY_PATH%\opendmk_jmxremote_optional_jar-1.0-b01-ea.jar service:jmx:jmxmp://<host>:<port>

但它不是很干净,我只是想知道我做了什么错误。我只是想知道!

非常感谢!

1 个答案:

答案 0 :(得分:0)

有时你会留下一个问题几天,并以新的心态解决它...如果它对任何人有帮助,解决方案如下,

d2$inmarket[grepl('Chicago', d1$market)] <- 1

问题似乎与目录javax.transaction.Transactional上有空格这一事实有关,但双引号set MY_PATH=%cd% "%JAVA_HOME%\bin\jconsole.exe" -J"-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;%JAVA_HOME%\lib\tools.jar;%MY_PATH%\opendmk_jmxremote_optional_jar-1.0-b01-ea.jar" service:jmx:jmxmp://<host>:<port> 不能放在任何地方(例如我试图定义环境变量{ {1}}为Program Files,但没有帮助。