Я пытаюсь отлаживать удаленное приложение, запущенное в профиле WebSphere Liberty через IntelliJ.Некоторые контрольные точки IntelliJ X'd во время удаленной отладки
Я могу установить точки останова в своем собственном коде - те, которые отображаются с галочкой на полях и работают нормально.
Конкретная проблема, с которой я столкнулся, связана с java.io.ObjectInputStream
. Когда я вызываю readObject()
в поток, он выдает исключение. Я хотел бы узнать больше о том, какая конкретная часть моего потока плохая, поэтому я щелкнул правой кнопкой мыши readObject()
и выбрал Go To
>Implementation
и попытался установить несколько точек останова в этом методе.
Когда я запускаю отладчик, эти контрольные точки появляются с X через точку останова вместо галочек, и это сообщение появляется в подсказке:
Warning: No executable code found at line 603 in class java.io.ObjectInputStream
Но эта линия явно имеет этот код в нем:
return Class.forName(name, false, latestUserDefinedLoader());
Так что я действительно смущен, почему я получаю это сообщение об ошибке.
Любые предложения относительно того, как я могу либо иметь точку останова в пределах java.io.ObjectInputStream
, либо иначе увидеть некоторые десериализуемые значения до того, как будет выбрано исключение.
Возможно, у вас есть версия JVM в IntelliJ и Liberty. – Gas
@Gas: у них работают разные ОС ... Liberty на RHEL, но IntelliJ на моей локальной машине Windows ... это может вызвать проблему? – ArtOfWarfare
Запустите 'java -version' на обеих машинах. – Gas