2013-10-13 3 views
0

Eclipse에서 비교적 작은 프로그램을 디버깅하는 동안 단계별로 "소스를 찾을 수 없음"오류가 표시됩니다. 다른 질문은 이것이 대개 가져 오기/병 문제라는 것을 나타냅니다. 이 경우 가져온 jar 파일은 없으며 src/default 패키지의 클래스는 없습니다. 여기서 문제가되는 클래스, 푸이며, 디버거가 새로운 객체를 인스턴스화 라인에서 지적 된 경우Java, Eclipse, "Source Not Found"

(예는, "푸 foo는 = 새 푸()")

:

특정 행동이있다 동일한 소스 디렉토리에 있고 유효한 생성자가있는 경우 두 가지 중 하나가 발생합니다.

1) 다음 중 하나 : F5를 누르면 클래스와 생성자 시그니처로 이동합니다. 후속 F5는 나를 "소스를 찾을 수 없음"이라는 두려운 오류로 안내합니다.

2) 또는 : F5를 친 것은 바로 저를 취할 것입니다 어느 경우 오류

"소스를 찾을 수 없음", 나는 일종의 .... 디버깅을 계속할 수 있습니다. 예를 들어, 디버그 세션이 계속되고 앞으로 나아가면 프로그램을 통해 추가 단계가 수행됩니다. (디버거없이이 프로그램을 실행하거나 해당 위치에 중단 점이 없으면 아무런 문제가 없습니다 .F8을 누르고 다음 중단 점으로 이동하면 보통 문제가 없습니다.

Java 빌드 경로 소스가 올바르게 설정되어 있습니다 (기본 패키지가있는 프로젝트의 src 서브 디렉토리). Java Build Path 라이브러리에는 JRE 시스템 라이브러리 외에는 아무 것도 없으며 이름 충돌은 없습니다. 나는 Java Build Path에 필요한 다른 것을 생각할 수 없다.

이것은 디버거 (수치 응용 프로그램에서의 NaN 확산)로 사냥하고있는 버그와 관련이 없지만 산만 해지고 문제의 근원지에 도달하는 데 방해가됩니다.

특정 질문 : 어떤 문제가 있습니까? 아니면 내가 전에 눈치 채지 못한 행동이 기대 되는가?

편집 : 코드 포함

Loop2: for (int depth = 0; depth < maxDepth; depth++) { 
     for (int node = 0; node < policy.numMemory; node++) { 
      Belief belief = new Belief(messages, node); 
      nodeTraces[node] = new nodeTrace(policy, pomdp, messages, belief, depth); 
      if (nodeTraces[node].bestGain > bestGain) {bestTrace = node; bestGain = nodeTraces[node].bestGain; } 
     } 
     if (bestGain > 0.01) { System.out.println("breaking"); break Loop2; } 
    } 

Belief belief = new Belief(messages, node);에 중단 점을 설정하고 디버거에서 메시지를 찾을 수 없음 소스를 얻을 것입니다 F5를 타격. 그 클래스의 코드는 다음과 같습니다

public class Belief { 

int numStates; 
double[] belief; 

public Belief(Messages messages, int node) { 
    // do some stuff 
} 

는 난 아무데도이 프로젝트에는 포함 된 패키지가 없음을 다시을 강조한다. 모든 클래스는 내 프로젝트이며 Java Build Path의 소스 탭에 포함되어있는 프로젝트의 소스 디렉토리에 있습니다. 위에 제시된 링크가 여기에 어떤 일이 일어나는지 설명한다면, 나는 그것을 3 번 읽은 후에도 그것을 보지 않을 것입니다. 누군가가 작은 말로 저에게 설명한다면 감사 할 것입니다.

+2

커뮤니티가 복제본인지 결정합시다 :) –

+0

충분히 공정하게 작성하십시오. 나는 단지 선생님을 먼저 보았다. – Novak

+1

코드를 게시 할 수 있습니까? – newtonrd

답변

0

Eclipse에서 표준 라이브러리 (예 : JDK)의 소스가 누락되었을 수 있습니다.

환경 설정 -> Java -> 설치된 JRE를 통해 설정할 수 있습니다.

+0

기본값을 jdk1.7.0_40에서 jre7로 변경하고 다시 되돌립니다. 두 설정 중 아무런 동작이 변경되지 않습니다. – Novak

+0

해당 JDK에 대한 소스 첨부 파일이 있습니까? 예를 들어 java.lang.Object를 유형으로 열고 소스를 볼 수 있습니까? –