Почему МУРАВЕЙ говорит мне, что JAVA_HOME является неправильным, когда это не?

Так, короткий ответ на мой вопрос является "нет".

Однако интересно исследовать почему. Посмотрите эти netstat вывод от допустимого локального соединения. Вот порты, которые я вижу открытый в результате jconsole устанавливание локальной связи с собой. Как Вы видите, порт 1650 является локальным портом, используемым для получения информации JMX:

Proto  Local Address          Foreign Address        State
TCP    Gandalf:1650           Gandalf:1652           ESTABLISHED
TCP    Gandalf:1650           Gandalf:1653           ESTABLISHED
TCP    Gandalf:1650           Gandalf:1654           ESTABLISHED
TCP    Gandalf:1650           Gandalf:1655           ESTABLISHED
TCP    Gandalf:1650           Gandalf:1656           ESTABLISHED
TCP    Gandalf:1652           Gandalf:1650           ESTABLISHED
TCP    Gandalf:1653           Gandalf:1650           ESTABLISHED
TCP    Gandalf:1654           Gandalf:1650           ESTABLISHED
TCP    Gandalf:1655           Gandalf:1650           ESTABLISHED
TCP    Gandalf:1656           Gandalf:1650           ESTABLISHED

Однако не достаточно попытаться соединиться jconsole с localhost:1650. К сожалению, весь, который будет, сеть Вы является "Отказавшим соединением: никакой такой объект в таблице" сообщение.

Так, заключение моей исходной истории состоит в том, что, если мы собираемся упростить дистанционный мониторинг с помощью JMX для наших клиентов, мы действительно должны определить уникальные отдельные порты удаленного доступа для множества процессов Java, которые запускаются в нашей системе. К счастью, все это требует, разумное использование аргумента VM:

com.sun.management.jmxremote.port=portNum

, где у нас почти наверняка будет последовательный предуказанный диапазон portNum так, чтобы клиент мог выбрать корректное удаленное приложение с помощью номера порта.

59
задан Ankur 13 October 2009 в 07:55
поделиться

2 ответа

Когда вы говорите, что вы «четко установили» JAVA_HOME на «C: \ Program Files \ Java \ jdk1.6.0_14» - это то, что вы видите, когда запускаете "set" из командной строки? Я полагаю, что Ant будет угадывать значение для JAVA_HOME, если оно вообще не задано ... возможно ли, что вы установили JAVAHOME вместо JAVA_HOME?

Если это не так, я предлагаю вам отредактировать ant.bat командный файл (и все, что он вызывает - я не могу вспомнить, запутан он или нет) для распечатки JAVA_HOME в начале и в различных других интересных местах.

34
ответ дан 24 November 2019 в 18:02
поделиться

Надеюсь, вы знаете о переменных среды System и User. Пользовательские предпочтительнее системных. Если вы установили свой JAVA_HOME в системные переменные и если для них есть запись в пользовательских переменных, то вы получите только последнюю.

Щелкните правой кнопкой мыши «Мой компьютер», перейдите к свойствам, выберите вкладку «Дополнительно» и щелкните «Переменные среды», чтобы просмотреть список переменных среды пользователя и системы.

3
ответ дан 24 November 2019 в 18:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: