Ошибка Eclipse: «Не удалось подключиться к удаленной виртуальной машине»

Я получаю следующую ошибку при запуске Debug из Eclipse IDE.

Сообщение: “Failed to connect to remote VM. Connection Refused” “Failed to connect to remote VM. Connection Refused”

Что может быть причиной?

Вы настроили удаленную виртуальную машину для приема соединений?

 java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=10000,suspend=n yourServer 

Есть ли межсетевой экран?

Вы указываете правильный хост / порт?

Вы подключены к VPN?

Удалите прокси-сервер из eclipse!

Перейдите в раздел «Сетевые подключения» в разделе «Общие настройки» (Windows -> «Настройки») и установите «Активный поставщик» на «Прямой»,

удалить прокси

Перезагрузите свое Eclipse после этого

Дэвид Цитрон прав – если локальный хост не разрешает правильно, это может вызвать эту проблему. Вот как проверить:

Если он работает, когда ваш компьютер не подключен к сети (нет Wi-Fi, нет сетевых кабелей). Если это работает в этих условиях, возможно, вам нужно убедиться, что адреса правильно разрешены на localhost хосте. Сообщения, которые DDMS и adb.exe используют для отладки и обмена данными с виртуальной машиной, должны правильно разрешаться на localhost компьютере на вашем ПК. (Да, странно, что другие команды, использующие DDMS & adb, работают нормально, но отладка не делает. Кажется, что что-то в DDMS или adb необходимо стандартизировать, чтобы все они работали при тех же условиях.)

Если вам нужно убедиться, что все правильно исправлено на localhost хосте:

1) Убедитесь, что эта строка находится в файле /Windows/System32/drivers/etc/hosts :

  127.0.0.1 localhost

(у вас может быть любое количество пробелов между «127.0.0.1» и «localhost»)

И, как предложил Дэвид Цитрон, убедитесь, что файл hosts действителен и не имеет ошибок или ошибок.

2) Если это не сработает, вам может потребоваться также добавить IPv4-адрес вашего ПК в файл hosts и разрешить его на localhost . (Вы можете узнать адрес IPv4 для своего компьютера с помощью команды ipconfig .) Если, например, адрес IPv4 вашего компьютера равен 192.168.1.100 вы должны добавить строку

 192.168.1.100 localhost

на ваш файл hosts. (Вы можете добавить его под строкой «127.0.0.1 localhost» в файле.)

Вы можете проверить, что adb (и ваш эмулятор, если вы его используете) прослушивает порты, используя команду netstat -b . (Обратите внимание, что вам нужны права администратора для параметра -b . Я открываю окно команд, используя «Запуск от имени администратора».)

У нашего образа разработки только есть установка Tomcat на нем, поэтому настройка переменных среды и т. Д. Не имела никакого эффекта. Если вам нужно сделать это через службу Tomcat Windows, вам нужно знать несколько вещей:

  • Комментарий Дэвида Цитрона был последним, что мне нужно, чтобы заставить мое соединение работать. Файл hosts на наших компьютерах прокомментировал localhost (он, предположительно, разрешен через DNS, но это не работает для отладочного соединения). Я расколол его и смог подключиться.
  • Если включено управление доступом к пользователю, вам необходимо использовать учетные данные администратора для доступа к панели управления службами или приложению мониторинга Tomcat или к тому, что вы используете для переключения состояния сервера. Приложение монитора (зарегистрированное здесь ), вероятно, является лучшим, потому что вы можете редактировать настройки сервера для параметров отладки и запускать и останавливать сервер.
  • Я подумал, что, возможно, вам нужно будет запустить Eclipse в качестве администратора, чтобы иметь возможность завершить процесс Tomcat, но вы этого не сделаете. Как только у вас будет это удаленное приложение, вы сможете работать с сервисом до завершения.

добавьте в свой сценарий запуска:

 export JPDA_ADDRESS=8787 export JPDA_TRANSPORT=dt_socket export JPDA_HOST=localhost JAVA_OPTS=$JAVA_OPTS -Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 JAVA_OPTS=$JAVA_OPTS -Dsun.rmi.dgc.server.gcInterval=3600000 JAVA_OPTS=-Xdebug -Xnoagent -Xrunjdwp:transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=n $JAVA_OPTS 

Я решил установить его в Eclipse:

 Windows --> Preferences --> Java --> Debug --> Debugger timeout: 10000 

Прежде, чем я установил « Debugger timeout: 3000 », и у меня были проблемы с таймаутом.

Если вам нужно отладить приложение, работающее с Tomcat, убедитесь, что ваша Tomcat-папка / bin / startup.bat (если используется Windows) содержит следующие строки:

 set JPDA_TRANSPORT="dt_socket" set JPDA_ADDRESS=8000 call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS% 

Возможная причина для этой ошибки:

  1. Приложение Remote Java не работает.
  2. Проверьте свой хост и порт, много раз эти записи неверны.
  3. Брандмауэр не разрешает доступ к вашему удаленному порту.

Вы также можете проверить это как руководство по удаленной отладке eclipse для получения более подробной информации.

Если вы используете windows os, замените строку в конфигурации Tomcat6\bin\startup.bat .

замещать

 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 

с

 call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS% 

Следующие работали для меня: отредактируйте последнюю строку tomcat startup.sh от

 exec "$PRGDIR"/"$EXECUTABLE" start "[email protected]"` 

в

 export JPDA_ADDRESS=8000 export JPDA_TRANSPORT=dt_socket exec "$PRGDIR"/"$EXECUTABLE" jpda start "[email protected]" 

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

Я только что видел это, пытаясь отлаживать JVM Windows 10 внутри виртуальной виртуальной машины, и я пытаюсь подключиться к Eclipse, работающему на хосте VirtualBox. В моем случае агент привязан только к интерфейсу 127.0.0.1 .

Чтобы исправить это, вы можете определить address включая IP-адрес интерфейса, к которому вы хотите привязать. Например:

 java -agentlib:jdwp=transport=dt_socket,server=y,address=192.168.0.5:8000,suspend=n  

Используйте 0.0.0.0 для адресов, чтобы иметь возможность подключаться к любой удаленной машине, то есть:

 -Xdebug -Xrunjdwp:transport=dt_socket,address=0.0.0.0:8000,server=y,suspend=y 

Я решил и решил эту проблему, отключив все удаленные приложения Java в окне отладки / перспективы и перезапустив Eclipse. После этого я смогу подключиться.

Удалите и установите снова плагин ADT android.

У меня была проблема с Tomcat, работающим на Ubuntu. Проблема была связана с selinux, и по какой-то причине она не позволит Eclipse подключиться к порту отладки. Отключение selinux или помещение его в разрешающий режим решили проблему для меня.

Я получаю эту ошибку для Weblogic после установки Quicktime и удаления QTJava.zip из classpath решает проблему.

https://blogs.oracle.com/adfjdev/entry/java_jre7_lib_ext_qtjava

Увеличьте значение памяти свойств

  • MEM_PERM_SIZE_64BIT
  • MEM_MAX_PERM_SIZE_64BIT

в файле setDomainEnv.cmd из %weblogic_home%\user_projects\domains\your_domain\bin

Я добавлю еще одно возможное решение, если вы используете это на виртуальной машине (vmware и т. Д.), Некоторые другие процессы на хосте или другой виртуальной машине уже могут иметь порт, с которым вы пытаетесь установить соединение. Либо остановите этот другой процесс, либо выберите другой порт.

Решение, которое сработало для меня, странно

  1. Просто удалите все точки останова
  2. Перезагрузите tomcat в режиме отладки (с помощью запуска Catalina.sh jpda)
  3. Теперь попробуйте подключиться, и это сработало !!!!

Создайте файл setenv.bat в папке nib Tomcat. Добавить SET JPDA_ADDRESS = 8787; Переопределите порт jpda Откройте cmd, перейдите в папку bin Tomcat и запустите tomcat, используя Catalina jpda start. Настройте точку отладки на eclipse. Затем компилируйте свой проект. Проверьте localhost: 8080 / Разверните войну или банку в папке webapps, и это должно развернуть войну на Tomcat. Затем отправьте запрос. удалите точку отладки. ПРИМЕЧАНИЕ. Не редактируйте файл catalina.bat. вносить изменения в файл setenv.bat

Если вы используете Jboss:

изменение в файле jboss7.1.1 \ bin \ standalone.conf.bat строка:

 rem set "JAVA_OPTS=%JAVA_OPTS% -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n" 

чтобы:

 set "JAVA_OPTS=%JAVA_OPTS% -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n" 

Я попробовал несколько вещей, упомянутых здесь, но метод ниже работал для меня:

Перейдите в Debug Console из Eclipse, где вы найдете имя процесса, который уже существует. Щелкните правой кнопкой мыши на этом процессе и выберите «Завершить и удалить», это завершит процесс. Теперь попробуйте снова начать процесс, и он будет работать.

В моем случае я отключу брандмауэр Windows

1- Откройте брандмауэр Windows, нажав кнопку «Пуск» Изображение кнопки «Пуск», а затем «Панель управления». В поле поиска введите брандмауэр и нажмите «Брандмауэр Windows».

2- Нажмите Включить или выключить брандмауэр Windows. Требуется разрешение администратора. Если вам будет предложено ввести пароль администратора или подтверждение, введите пароль или подайте подтверждение.

3. Нажмите «Отключить брандмауэр Windows (не рекомендуется)) в каждом сетевом расположении, которое вы хотите прекратить пытаться защитить, а затем нажмите« ОК ». Была ли эта страница полезной?

Иногда вам нужно также

  1. Чтобы остановить все клиентские службы Vpn (fortiClient, vpn Client …)
  2. Чтобы остановить Antivirus Firewall (например, Kaspersky => Configuration => Anti-Hacker)

Я использую jboss, поэтому решение вашей проблемы было перезапущено.

 service jboss-portal restart 

Я столкнулся с этим в Hybris.

  1. Проверьте свой порт в «Мониторе ресурсов»> «Сеть». Проверьте, пользуется ли другой сервис вашим портом.

1.2 Если да, то вам нужно изменить свои свойства в project.properties

1.3 Измените свой адрес, любой ansible адрес. В моем случае я изменился с 8000 до 8080. Затем сохранил.

 java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8080,suspend=n yourServer 
  1. В вашей консоли перестройте своего муравья, используя команду ‘ant all’

  2. Затем снова отлаживаем, используя команду «hybrisserver.bat debug»

ПРИМЕЧАНИЕ. Для входа в систему Glassfish Server через консоль администратора -> Конфигурации -> server-config -> JVM-настройки. * Не забудьте установить флажок Включить для Debug. Теперь Обратите внимание на адрес, этот адрес будет использоваться в порту eclipse Remote Java Application Debug. Проверьте оснастку на сервере из морской рыбы здесь

  • ImprovedNamingStrategy больше не работает в Hibernate 5
  • Есть ли у Java HashMap с обратным поиском?
  • Чтение значений даты из ячейки excel с использованием API POI HSSF
  • Управление зависимостями DLL с Maven
  • Java: Что делает оператор двоеточия (:)?
  • Hibernate: автоматическое создание / обновление таблиц db на основе classов сущностей
  • Как вызвать статический метод в JSP / EL?
  • Вычисление всех подмножеств набора чисел
  • Лямбда-выражение и метод перегружают сомнения
  • Стеганография при сжатии с потерей (JAVA)
  • Добавление n часов в дату на Java?
  • Давайте будем гением компьютера.