troubleshooting

2.

J520 2019. 3. 4. 18:03

Obsolete Methods on the Stack




 이클립스를 실행하자,

[Obsolete Methods on the Stack]  ......contains obsolete methods.....  라는 경고 창이 떴다.


알아보니, 디버그 모드 중에 실행하면 뜨는 오류로, 디버그 모드를 끄고 실행하면 된다고 한다.

또는 경고 팝업 창 하단의 restart 버튼을 눌러주니 경고 창이 뜨지 않았다.



이후 이것저것 찾아보다가, hot code replace failed 라는 상황을 발견했다.  ----> 출처 : https://growinglastcanyon.tistory.com/4


이클립스에서는 런타임 실행 중에 메소드의 변경이 있어도,

자바가상머신의 재시작 필요 없이 변경된 사항을 디버거가 대체하는(hot code replace) 기능이 있다고 한다.

다만, 클래스 파일의 필드의 추가나 제거에는 작용하지 않는다는 제한이 있다.

----> (hot code replace에 대한 더 자세한 설명 : https://wiki.eclipse.org/FAQ_What_is_hot_code_replace%3F )



stackoverflow에서 찾아보니, obsolete methods.... 경고가 hot code replace 문제를 나타낸다고 한다고 한다.

다만, 경고의 형태가 다르게 뜨는 것에 대해서는 이클립스 버전 때문인지 아니면 두 경우에 차이가 있기 때문인지, 확실하게는 모르겠다.




cf.) JVM에 대한 이해 : http://www.itworld.co.kr/news/110837




'troubleshooting' 카테고리의 다른 글

3.  (0) 2019.03.15
1.  (0) 2019.03.04