Проблема: локальный jconsole для JVM PID не работает, если я не укажу «java -Djava.rmi.server.hostname» (даже не нужно указывать это значение, но оно должно быть определено). PID можно обнаружить в пользовательском интерфейсе, но SSL/небезопасные соединения затем терпят неудачу.
Я следую таким руководствам, как этот https://docs.oracle.com/en/java/javase/22/ jmx/java-management-extensions-jmx-technology-tutorial.html#GUID-215E9966-9BF6-4201-848A-FE860BDF3DAD
с использованием локального JMX (т. е. без использования RMI).
Во всех таких локальных руководствах по JMX говорится:
- запустите приложение JVM (при этом порты не открываются, как ожидалось, поскольку я не использую RMI) «java -jar myapp. jar"
- запустите: jconsole
- выберите приложение из таблицы локальных процессов пользовательского интерфейса
Если я использую «java -Djava.rmi.server.hostname», тогда он работает, и jconsole подключается по PID.
Вопрос: для локальных соединений JMX: "-Djava.rmi.server.hostname" становится обязательным даже для локального JMX (кстати: это нарушает все локальные руководства по jconsole)
p>
Есть ли что-то в моей системе (многосетевой), что вызывает это?
Система: JDK 17 в Fedora 40; имеет несколько сетевых карт и IP-адресов, но имя хоста системы разрешимо.
Обновление: решено — IP-адрес системы изменился, а динамический DNS не обновился правильно. Лицо ладони.
Подробнее здесь: https://stackoverflow.com/questions/788 ... r-hostname