만들고 있는 플러그인 중에 새로운 파일을 생성하는 작업을 해야 할 것이 있어서 찾아보다가 아래와 같은 구절을 발견하였습니다.
워크스페이스에서 리소스가 생성되면 그것은 동시에 파일 시스템에도 존재하게 된다. 명령행이나 운영체제 사용자 인터페이스를 사용하여 폴더 또는 파일을 프로젝트로 복사하는 것처럼 사용자 또는 워크스페이스를 사용하여 폴더 또는 파일을 프로젝트로 복사하는 것처럼 사용자 또는 워크스페이스 API(IResource.refreshLocal)에 의해 갱신(refresh) 액션이 실행되기 전에는 워크스페이스는 파일 시스템에 대한 직접적인 변경 사항을 알 수 없다....
자바 개발자를 위한 이클립스 바이블 제2판 p.609
예전에 했던 것은 까맣게 잊어버리고 ANT Task 로 만들어 볼까나하는 생각에 다시 컴퓨터에 앉아서 작업을 하려다가 혹시나 하는 마음에 구글에서 eclipse refreshLocal 을 검색했더니... 제가 쓴 포스팅이 보였습니다. 털썩.. 이놈의 기억력이란 ㅋㅋㅋ
아래와 같이 Ant >Runtime 에는 eclipse.refreshLocal 이라는 ANT Task 가 있습니다.
그럼에도 불구하고 실행을 하게되면 아래와 같은 오류가 나게됩니다.
열심히 구글신께 조아린 결과 JRE 를 맞쳐주라는 것을 발견하였습니다.
일단 실행된 ANT Task 들은 External Tools 에 history 가 남게 됩니다. External Tools Configurations... 를 선택하여 설정을 변경하러...
좌측에서 본인이 실행할 Task 를 선택하고 JRE 탭에서 Run in same JRE as the workspace 를 선택합니다.
다시 ANT Task 를 실행하면~ 역시 잘됩니다.
원인은 org.eclipse.core.resources 플러그인의 확장으로 eclipse.refreshLocal 이 정의되어 있는데 설치된 JRE 에서는 해당 Task 를 접근할 수 있는 설정이라던지 그런 것들이 없기 때문에(모르는 것일 지도...) 그런 것이었습니다.
Ant Build 나 External Tools 의 기본 JRE 를 바꾸고 싶었으나 찾을 수가 없어 수작업으로 처리를 하였습니다.