Eclipse에서 디버깅하는 동안 변수가 표시되지 않음
저는 개발자들을 위해 이클립스 갈릴레오를 운영하고 있습니다.
디버그 모드에서 실행하면 현재 변수와 해당 값이 변수 창에 나타나지 않습니다.중단점이 발생한 후 코드를 통과할 때 창이 비어 있습니다.
어젯밤에는 효과가 있어서 당황스럽습니다.이러한 현상이 발생할 수 있는 이유와 문제 해결에 대한 팁이 있습니까?
저는 디버그 관점을 재설정함으로써 쉬운 것을 시도하게 되었습니다.
창 => 관점 => 관점 재설정...
댓글 달아주셔서 감사합니다.
창 --> 보기 표시 --> 변수
제 문제는 변수 이름은 볼 수 없고 값만 볼 수 있다는 것입니다.한참을 노력한 끝에 해결책을 얻었습니다.아래쪽 화살표를 클릭합니다(변수 탭에서) --> 레이아웃 --> 열
그것은 효과가!
관점을 재설정하는 것만으로는 충분하지 않았습니다. 먼저 "변수" 탭을 삭제한 다음 관점을 재설정해야 했습니다(변수 탭을 작업 상태로 복원).위에서 언급하지 않은 또 다른 한 가지는 다른 사용자에게 도움이 될 수 있습니다. 변수 탭이 작동하지 않을 때 탭 제목은 기울임꼴로 표시됩니다.작동하면 일반 글꼴로 돌아갑니다.
Eclipse를 다시 시작했는데 다시 작동했습니다.
Windows --> showView --> 변수
또는 관점을 재설정할 수 있습니다.
windows --> 환경설정 --> 투시도 --> 기본값 복원
변수를 마우스 오른쪽 버튼으로 클릭하고 검사를 선택하면 팝업 창에 나타납니다.
변수를 보려면 정적 선언을 제거해야 한다는 것을 알았습니다. 하지만 이것이 더 잘 작동합니다.
Eclipse에서 디버깅하는 동안 정적 변수 수정/보기
저에게 효과가 있었던 것은 다음과 같습니다.맨 위 스택 프레임에 대한 빈 변수 보기가 있습니다.하위 스택 프레임을 선택한 다음 맨 위 프레임을 다시 선택하면 변수 보기가 새로 고쳐집니다.참고: Eclipse Mars를 사용하고 있으므로 이 버그는 이 버전에서 반환된 것으로 보입니다(또는 다른 버그일 수도 있고 동일한 증상일 수도 있습니다).
이클립스 메뉴로 이동 --> 창 ==> 보기 표시 ==> 변수
이렇게 하면 변수 창이 일식으로 다시 표시됩니다.
제 경우에는 디버거 설정(제 경우 xdebug)에서 Max children / max data / max array depth를 큰 값으로 변경했기 때문에 변수가 나타나지 않았습니다...구성을 재설정했고 작동했습니다.
중단점에서 점프할 수 있다면 관점을 재설정해도 괜찮습니다.
이클립스 버전:Luna Service Release 2 (4.4.2) Build id: 20150219-0600 Variable View가 비어 있을 뿐만 아니라 실행을 탐색하는 버튼(F5, F6, F8 기능 버튼)도 비활성화되어 있다는 것을 알게 되었습니다.이 경우 디버그 보기로 이동하고 노란색 일시 중지 기호가 있는 행을 마우스 오른쪽 단추로 클릭한 다음 "계속"과 같은 옵션을 선택합니다.다음 중단점에서 변수 보기가 자동으로 채워지고 실행 탐색 버튼이 활성화됩니다.이유를 설명할 수 없습니다.
또한 Eclipse에서 변수를 표시하려면 프로세스를 일시 중단해야 합니다.실행 중인 경우 이클립스에 변수가 표시되지 않습니다.
스레드를 일시 중단하려면 "디버그" 보기에서 스레드를 선택하고 "일시 중단"을 누릅니다.
위의 답변을 시도한 후 해결책을 찾지 못했습니다. - 아마도 이것은 제 경우에 매우 구체적일 수 있습니다. - 해결책은 Eclipse Run에서 "Skip All Breakpoints" 옵션이 활성화되지 않도록 하는 것이었습니다. - > Skip All Breakpoints (ctl-alt-B) (토글)
Java 컴파일러가 변수 정보를 보존하지 않도록 구성되어 있을 수 있습니다.Project Explorer에서 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 Properties > Java Compiler > 생성된 클래스 파일에 변수 속성 추가(디버거에서 사용)를 선택합니다.이 옵션을 설정하지 않으면 로컬 변수가 아닌 변수 보기에서 필드만 볼 수 있습니다.
위의 어떤 것도 저에게 효과가 없었습니다.(메뉴에서) 작동한 것은 무엇입니까?
창 -> 투시도 -> 투시도 닫기
그리고나서
창 -> 투시도 -> 투시도 열기 -> 디버그
이클립스는 실행 중인 코드가 주석 처리된 것으로 생각하기 때문에 이 문제에 부딪혔습니다.#ifndef 래퍼가 있으며 프로젝트의 일부에서 조건이 false로 평가됩니다.불행히도 CDT는 (헬리오스나 케플러) 항상 잘못된 것은 아니라는 것을 깨달을 만큼 똑똑하지 못했고, 코드의 그 부분을 통과할 때 변수 창이 작동하지 않습니다.개별 변수 값을 계속 검사할 수 있습니다.
저도 같은 문제가 있었고 MinGW를 설치한 후 변수를 확인할 수 있었습니다.
위의 Fender 스타일을 사용했지만 변수를 "감시"하기로 선택했습니다.식 탭에서 변수 탭과 Voila(비즈니스에서 다시 사용하는 변수) 탭으로 이동했습니다.
어떤 해결책도 저에게 효과가 없었습니다.내 문제를 해결한 것은 변수 창의 드롭다운 화살표 아래에 있었습니다.레이아웃 옵션에서 "변수 보기 전용"을 선택하면 변수의 값을 다시 볼 수 있습니다.
이 문제도 갑자기 발생합니다.한 순간은 Debug가 작동하다가 다음 순간은 작동하지 않았습니다.
저도 이런 문제가 있습니다.EclipseNeon + Tomcat8은 디버그 모드일 때 모든 변수를 표시하지 않습니다.저는 위의 제안들을 시도했지만 성공하지 못했습니다.그런 다음 NetBeans8 + GlassFish4로 동일한 웹 프로젝트를 디버깅했고 모든 변수가 값과 함께 나열됩니다.그런 다음 NetBeans8 + Tomcat8로 동일한 웹 프로젝트를 디버깅했는데 모든 변수가 나열되지 않습니다.그런 다음 EclipseNeon용 GlassFish4를 설치하고 동일한 웹 프로젝트를 디버깅하면 모든 변수가 값과 함께 나열됩니다.그래서 문제는 Tomcat8에 있습니다.참고: 이클립스를 관리자로 실행하여 GlassFish4를 설치합니다. NetBeans를 사용하면 다른 서버를 설치하기가 더 쉽습니다.
제 문제는 OpenMP를 사용하고 OpenMP를 비활성화한 후 로컬 변수가 나타난다는 것입니다.
보기를 재설정하고 Eclipse를 다시 여는 것은 도움이 되지 않았지만, 이것은 저에게 효과가 있었습니다.
변수 창 -> 레이아웃 -> 열 선택 -> 원하는 열을 선택합니다.
이미 '이름'과 '값'을 모두 확인했는데도 선택을 취소하고 다시 선택한 다음 '확인'을 클릭하면 열이 나타납니다.
저 같은 경우에는.인 원인이 생잠인것같습다니재제적에각▁is▁the▁think라고 생각합니다.Variables View
제대로 초기화되지 않았습니다. 또는 오른쪽 코드가 변수를 변경하기 전에 다른 중단점을 입력하는 것이 좋습니다.추가된 두 번째 중단점(위에서 언급한)을 입력하면 이클립스가 보기를 새로 고치고 모든 것이 다시 정상으로 유지됩니다.
모든 나쁜 소프트웨어와 마찬가지로 이 잘못된 행동에 대한 치료법은 존재하지 않습니다.한 사람에게 좋은 것은 다른 사람에게 효과가 없습니다.
저는 디버거를 브레이크 포인트에서 한 번 정지시킨 다음, 두 번째, 세 번째로 야수가 모든 데이터가 포함된 가변 뷰를 보여주었습니다.
원하는 디버그 보기를 사용할 수 있으며 이 버그가 나타날 때마다 디버그를 재설정하지 않아도 된다고 가정하면 이 방법을 사용해 보십시오.이렇게 하면 "디버그 보기"에 "표현식" 보기와 "변수" 보기가 모두 열려 있다고 가정합니다.
식 탭('창 표시줄'이 아닌 텍스트가 있는 실제 탭)을 두 번 클릭합니다.이것은 그것을 최대화할 것입니다.이 작업을 반복하여 이전 크기/위치로 복원합니다.식을 제외한 모든 항목이 재설정됩니다.변수 탭을 반복하면 식이 재설정됩니다.
이는 이클립스가 설치된 Windows 10에서 작동했습니다.
버전: 2018-09(4.9.0)
빌드 ID: 20180917-1800
Java: jdk1.8.0_171
대부분의 경우 여러 개의 이클립스 프로젝트를 가져와서 Git Branch 간에 전환했습니다.그런 다음 디버거가 오지 않을 것으로 예상되는 잘못된 프로젝트를 빌드하고 가져옵니다!
리셋된 Eclipse Perspective가 작동하지 않는 경우.그런 다음 다음 작업을 수행합니다.
디스크에서 이클립스 프로젝트를 삭제합니다.
Eclipse 프로젝트를 청소하고 빌드합니다(나의 경우 ANT 도구를 사용했습니다).
참고: 디버거가 올 것으로 예상되는 프로젝트를 빌드하고 있는지 확인합니다.디버그 지점이 설정된 파일 위에 마우스를 올려 놓으면 빌드할 올바른 프로젝트 이름을 찾을 수 있습니다.이클립스 프로젝트를 다시 가져옵니다.
또한 [환경설정] -> [설치된 JRE]에서 올바른 JDK를 선택하고 있는지 확인합니다.
다른 이유가 있을 수 있습니다.
저의 경우, 변수 값 표시는 오랫동안 효과가 있었습니다.그러던 어느 날, 그것은 같은 코드 라인에서 작동을 멈췄습니다.저는 그 원인이 중단되었지만 여전히 Windows 파일 리소스를 보유하고 있는 Junit 테스트 스레드를 중단한 것이라는 것을 알게 되었습니다.
모든 Windows 응용 프로그램(이클립스 포함)을 닫은 후 일부 파일이 알 수 없는 이유로 잠겨 있기 때문에 삭제할 수 없는 디렉터리(Junit 테스트 리소스 디렉터리 아래)가 몇 개 있습니다.
그래서 이클립스 디버그 문제를 해결한 윈도우 재부팅을 시도했습니다.
나에게 문제의 해결책은 xdebug를 제대로 구성하는 것이었습니다.나는 php.ini에 다음 코드 행을 추가했습니다.
zend_debug = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable = 1
xdebug.show_local_debug = 1
누락된 중요한 부분: xdebug.remote_enable = 1
마우스를 이동할 때 "작업 중인 개체의 라이브 뷰"를 찾는 경우, 이름만 표시되며 테스트 중인 방법에 중단점을 두어야 합니다.그렇지 않으면 위에 마우스를 놓으면 메서드 이름만 표시됩니다.
어쨌든 누군가에게 도움이 되었으면 좋겠습니다.위의 모든 단계를 시도했지만, 여전히 작업 중인 개체를 라이브로 볼 수 없었습니다.초보자의 실수일 수도 있습니다.
행운을 빕니다!
언급URL : https://stackoverflow.com/questions/5490509/variables-not-showing-while-debugging-in-eclipse
'programing' 카테고리의 다른 글
Excel에서 NULL 셀 값을 출력합니다. (0) | 2023.04.27 |
---|---|
'Binding'은 종속성 개체의 종속성 속성에만 설정할 수 있습니다. (0) | 2023.04.27 |
Excel VBA를 사용하여 쉐어포인트 폴더의 내용 가져오기 (0) | 2023.04.27 |
YAML을 사용하여 파이프라인을 트리거하는 Azure 파이프라인 (0) | 2023.04.22 |
'for' 루프를 사용하여 디렉토리 내의 모든 파일을 반복합니다. (0) | 2023.04.22 |