Я запускаю Jconsole на своем macbook и пытаюсь подключиться к терминалу linux на ec2, у которого нет графики (только доступ из командной строки).
Я запускаю свой код так:
java -jar program.jar -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9005
-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.remote.ssl=false
Я прочитал здесь , что возникла проблема с доступом через EC2 (после того, как у меня возникли проблемы с подключением), и решение, похоже, было 'java.rmi.server.hostname to the public hostname of the instance
'
Я немного запутался, как это сделать. Я пробовал две вещи, одну, чтобы поместить это непосредственно в мой код (в главном разделе void static):
System.setProperty( "java.rmi.server.hostname" , "external_EC2_address" ); //in my real code I have the correct address here
Система приняла его (без ошибок при создании / загрузке исполняемого файла jar). Я также открыл брандмауэр на своем экземпляре, чтобы разрешить весь трафик TCP. Неудачно. Я попытался использовать вышеприведенное утверждение также как флаг для запуска программы, но все равно не повезло.
Есть идеи, как это сделать?
ОБНОВЛЕНИЕ: Это покажет, насколько я зеленый на Java, я сделал еще один шаг (все еще не работает), но я понял, что поместил java -jar filename.jar, а затем параметры не дали мне тот же результат как поставить мой -jar в конце команды. Я попытался это сделать, и программа пытается подключиться, а затем говорит, что соединение не удалось (прежде чем он сразу же скажет это на экране входа в систему).