2012-10-26 4 views
5

Eclipse는 Java 코드를 컴파일하기 전에 오류를 어떻게 감지하는지 궁금합니다.Eclipse는 코드에서 오류를 어떻게 감지합니까?

화해를 언급하는 Eclipse 포럼에서 this answer을 찾았습니다. 하지만 그것이 어떻게 작동하는지 알려주지 않습니다.

정규식을 사용하여 코드를 Java 사양과 비교하여 오류 및 경고를 감지합니까?

+0

아마 백그라운드 스레드에서 컴파일하려고 시도하고 오류를 파싱합니다. – Keppil

+0

@Keppil : 나는 그것을 상상할 수 없다. 더 큰 코드를 컴파일하는 데 몇 분에서 몇 시간이 걸릴 수 있습니다. 코드의 새로운 라인에 대한 IDE의 피드백은 실질적으로 즉각적입니다. –

+1

@mareser : IDE가 모든 코드를 컴파일한다고 생각하지 않습니다. 변경된 코드를 컴파일하기 만하면됩니다. 변경된 내용과 변경의 영향을 추적하는 방법이있을 수 있습니다. 그러나 나는 단지 짐작하고있다. –

답변

5

코드에서 항목을 변경하면 변경 사항이 델타로 표시됩니다. 델타는 AST (Abstract Syntax Tree)를 작성하여 분석하고 오류를 찾습니다. 오류 마커가있는 경우 오류 마커가 생성됩니다.

EDIT : Here은 C/C++ 용 CDT 파서가 어떻게 작동하는지 잘 설명합니다. JDT 구문 분석기도 같은 방식으로 작동해야합니다.

+0

그래서 구문 검사는 점차적으로 만 수행됩니다. 괜찮습니다. 오류를 찾는 방법에 대해 자세히 설명해 주시겠습니까? 당신의 근원에 또한 연결은 좋을. –

+0

좋은 설명! –

관련 문제