
오랜만에 유지보수 중인 Eclipse 프로젝트를 열어 소스코드를 수정하려했는데 오류가 발생하여 아래와 같은 화면으로 Gradle Task를 선택할 수 없게되었다. "Gradle Tasks" pane에서 리프레시 버튼을 클릭해도 "ZaApps"는 오류 표시인 빨간색 느낌표가 사라지지 않는다.

콘솔창에 표시되는 오류 메시지는 아래와 같다.

...
FAILURE: Build failed with an exception.
* What went wrong:
The specified initialization script '/var/folders/cp/z_vzbmr9399368p9gkrg112h0000gn/T/d146c9752a26f79b52047fb6dc6ed385d064e120494f96f08ca63a317c41f94c.gradle' does not exist.
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
BUILD FAILED in 6ms
임시 저장 gradle 스크립트 파일이 없다는 오류메시지인데 얼마전까지 잘 되던 프로젝트인데 어찌된 것인지...
프로젝트 탐색창에서 프로젝트위에 마우스 오른쪽 버튼을 누르고 메뉴 가장 하단의 Properties를 클릭한다.

나는 이렇게 설정한 적이 없었던 것 같은데 아래와 같이 "Gradle"설정에서 "Override workspace settings" 항목이 체크되어 있고 하단의 "Advanced Options" 항목 중 "Program Arguments"에 "--init-script" 옵션이 설정되어 있다.
과감하게 "Override workspace settings"항목의 체크를 없애보도록 하자.

하단의 "Apply and Close"버튼을 누르고 Gradle Tasks 창에서 Refresh 버튼을 눌러주면 OK 오류가 사라졌다.

오류만 해결하면 OK인 분들은 여기까지 읽으시면 된다.
===
이 참에 init-script가 무엇인지 알아보았다.
--init-script 옵션의 역할
• Gradle 초기화 단계에서 사용자 정의 작업 실행:
- 초기화 스크립트는 settings.gradle 또는 build.gradle보다 먼저 실행.
- 프로젝트에 영향을 미치지 않는 글로벌 설정, 로깅 설정, 플러그인 적용 등을 정의하는 데 사용.
• 예시 초기화 스크립트:
allprojects {
println "Initializing project: ${project.name}"
}
Eclipse에서 --init-script가 생기는 이유
1. Eclipse Buildship 플러그인의 자동 생성
• Eclipse의 Buildship 플러그인이 임시 초기화 스크립트를 생성하여 사용 중일 가능성이 크다.
• Buildship은 다음과 같은 목적을 위해 임시 초기화 스크립트를 생성할 수 있다:
- 사용자 정의 Eclipse 작업 (예: 프로젝트 디렉토리 설정)
- Gradle 빌드 로깅 및 디버깅 지원
2. 사용자가 명시적으로 설정한 경우
• --init-script를 프로젝트 설정에서 직접 추가했거나, 이전에 수동으로 설정한 내용이 남아 있을 수 있다.
3. 특정 플러그인 또는 설정 의존성
• 일부 플러그인(예: CI/CD 도구 또는 커스텀 Gradle 플러그인)이 자체적으로 초기화 스크립트를 삽입할 수 있다.
그러나, 얼마전까지 잘 빌드해서 사용하던 프로젝트에 어떠한 연유로 --init-script 옵션이 끼어들어갔는지는 알 수 없었다.
