5
gcj-4.4 및 -o 옵션을 사용하여 매우 간단한 Java 프로그램을 컴파일했습니다. gdb-7.2에서로드하고 디버깅을 시도했습니다. 내가 int 형 변수를 인쇄 할 수 있지만 int 배열을 인쇄 할 수 없습니다 것으로 나타났습니다. 이 오류 메시지가 나타납니다 :gdb에서 Java 배열을 인쇄하는 방법은 무엇입니까?
(gdb) p orderFinish[0]
cannot find java.lang.Object
(gdb) p (int)orderFinish
$8 = -136261440
(gdb) p orderFinish[3]
cannot find java.lang.Object
(gdb) p in
$9 = 1
(gdb) whatis orderFinish
type = int[]
제 질문은 어떻게 gdb에 Java 배열을 인쇄 할 수 있습니까? 내 OS는 openSUSE-11.1 x64-86bit입니다. 감사!
이것은 나를 위해 작동하지 않습니다. 실제로 테스트 해 봤니? –
나를 위해 잘 작동합니다, 이것은 곧바로 doco "p * array-variable @ length \t 길이로 지정된 배열의 첫 번째 값을 표시합니다. 동적으로 할당 된 메모리에 대한 포인터로 좋습니다." 이 작업을하기 전에 print array를 설정해야 할 수도 있습니다. – Dimitar
제 경우에는 debuginfos가 누락 된 것처럼 보입니다. 설치 한 후 작동하는 것 같습니다. –