Mam problemy z korzystaniem z funkcji hotswap w wersji społecznościowej Intellij IDEA. Mój jest w 14.1.4.Hotswap/DCEVM nie działa w Intellij IDEA (wersja społecznościowa)
Za każdym razem, gdy uruchomiłem debugowanie i zmieniłem kod Java, kliknąłem już odbudować projekt i wcisnąć "Tak" przy potwierdzaniu klas ponownego ładowania. Intellij informuje, że zmienione klasy są przeładowywane, ale wynik aplikacji jest taki sam jak poprzednio. Po prostu próbuję najprostszej aplikacji Java (tj. Nie w scenariuszach takich jak Tomcat, aplet itp.) Z stuffami po prostu takimi jak System.out.println
, konkatencje łańcuchowe itp. To, co zmieniłem podczas trybu debugowania, to po prostu kody body metod, ale nie podpis metody/Nazwa. Nie mogę tego dostać.
W Eclipse po prostu bezpośrednio zmienić kod i naciśnij Zapisz, a następnie po prostu działa.
Co poszło nie tak?
(Uwagi:
W rzeczywistości jestem próbuje użyć DCEVM co sprawia zmianę struktury możliwe (na przykład zmiana nazwy klasy, nazwa metody, dodać metody itp), myślałem, że to rozwiąże problem problemu Hotswap znaleziono w IntelliJ. nie trzeba dodawać, że nie działa.
w Eclipse, uda mi się za pomocą DCEVM i mogą zmieniać nazwy metod podczas debugowania.
i dalej próbować Hotswap-agent i nadal nie zrobił” t pracy, natknąłem się na artykuł mówiący, że IDE musi JDPA-połączyć się z JVM przez port 5000, ale nie ważne jak tri ED konsoli Intellij pokazuje, że jest on nadal łączenia thru losowej portu (51018 poniżej):
"C:\Program Files\Java\jdk1.8.0_60\bin\java" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:51018...."
Połączony celu VM adres: '127.0.0.1:51018' transportu: 'gniazdo'
Czy możliwe jest wymuszenie połączenia przez jeden określony port? Dodanie zmiennej DEBUG_OPT
środowiskową w Run/Debug Config nie działa)
Eclipse (o ile pamiętam) upuszcza potrzebne ramki, aby wydostać się z przestarzałego kodu. –