Jenkinsfile: JDK 21 설치 대기 및 명시적 사용 개선

- JDK 21 압축 해제 완료까지 대기 루프 추가
- Gradle 빌드 시 JAVA_HOME과 PATH 명시적 export
- java -version으로 사용 중인 Java 버전 확인
- JDK 경로를 직접 사용하여 Java 17 우선순위 문제 해결

Fix: JAVA_HOME is set to an invalid directory 오류 해결
This commit is contained in:
hjmoons 2025-10-30 18:35:22 +09:00
parent 718533cc88
commit 991c1855e4

26
Jenkinsfile vendored
View File

@ -45,10 +45,21 @@ pipeline {
steps { steps {
script { script {
echo "☕ Setting up Java 21..." echo "☕ Setting up Java 21..."
// JAVA_HOME을 명시적으로 설정 // JDK 21 설치 및 대기
env.JAVA_HOME = tool name: 'JDK21', type: 'jdk' def jdkHome = tool name: 'JDK21', type: 'jdk'
env.PATH = "${env.JAVA_HOME}/bin:${env.PATH}" env.JAVA_HOME = jdkHome
sh 'java -version' env.PATH = "${jdkHome}/bin:${env.PATH}"
// JDK 설치 완료 대기 및 확인
sh """
echo "Waiting for JDK installation..."
while [ ! -f ${jdkHome}/bin/java ]; do
echo "Waiting for JDK to be extracted..."
sleep 2
done
echo "JDK installation completed"
${jdkHome}/bin/java -version
"""
} }
} }
} }
@ -91,7 +102,12 @@ pipeline {
script { script {
echo "🔨 Building with Gradle..." echo "🔨 Building with Gradle..."
sh 'chmod +x gradlew' sh 'chmod +x gradlew'
sh './gradlew build -x test' sh """
export JAVA_HOME=${env.JAVA_HOME}
export PATH=\${JAVA_HOME}/bin:\${PATH}
java -version
./gradlew build -x test
"""
} }
} }
} }