Eclipse INDIGO source level 오류
어떤 안드로이드 앱을 만드는데 캡쳐와 관련된 특정 부분을 구현하기가 어려워서 해결방법을 검색하다가 Google Code에서 적당한 라이브러리를 찾을 수 있었다. 약 10일간의 삽질을 겪었기에 그 라이브러리(+샘플)를 얼른 내려받아 프로젝트를 import했다. 그러나 import하자마자 그 프로젝트의 코드들은 엄청난 양의 error마커를 토해냈는데 도시 이유를 알 수 없었다..
에러내용들을 키워드로 다시 검색을 해 본 결과, http://kameran.tistory.com/205 이 글을 발견하여
Compiler compliance level을 확인하였으나 이미 1.6인 상태였다. 나와 같은 문제를 겪고 있는 상황도 찾아볼 수 있었다. http://www.androidpub.com/2118520 글에서의 사례와 같이 이클립스(indigo)를 헬리오스로 다시 깔아야 하는 것 아닌가 하고 귀찮음을 느끼고 있을 때, 우연히 이 문제에 대한 해결방법을 발견하게 되었다!
이클립스에서 '.... only available if source level is 1.5 or greater ...' 등과 같은 오류가 발생할 때가 있는데 이클립스의 자바 컴파일러 버전설정이 코드와 맞지 않을 때 발생하는 오류이다. 아래와 같이 버전을 확인해 주었더니 오류가 사라졌다.
1. 이클립스(인디고)에서 Window->Preferences->Java->Compiler 순으로 들어가서 Compiler compliance level을 확인한다.
2. 설정에 문제가 없는데도 에러가 사라지지 않는다면, 위쪽의 Configure Progject Specific Settings.. 를 클릭한다.
3. 해당되는 프로젝트를 선택하고 OK버튼을 누른다.
4. Properties for *** (Filtered)라는 창이 뜨게 되는데, Enable project specific settings를 체크하고, Compiler compliance level을 맞게 설정해 주면 된다!