MapleStory Finger Point

☠️ νŠΈλŸ¬λΈ”μŠˆνŒ…

./gradlew clean build λΉŒλ“œ μ‹€νŒ¨ (Java 버전 문제)

HYEJU01 2025. 4. 5. 01:20

 

상황 μ„€λͺ…

 

IntelliJ μ‹€ν–‰ λ²„νŠΌμœΌλ‘œ ν•˜λŠ” κ²½μš°λŠ” 잘 μž‘λ™ν•˜λŠ”λ°

 

 

 

ν•˜μ§€λ§Œ `./gradlew clean build`  λͺ…λ Ήμ–΄λŠ” 자꾸 μ‹€νŒ¨ν–ˆλ‹€.

 

gradlew ν”„λ‘œμ νŠΈ gradle λ²„μ „μœΌλ‘œ μ‹€ν–‰
clean μ „ λΉŒλ“œ μΊμ‹œκ°€ 문제λ₯Ό μΌμœΌν‚¬ 수 μžˆμœΌλ―€λ‘œ, 클린 μƒνƒœλ‘œ λΉŒλ“œ ν•  λ•Œ μ‚¬μš©
build 컴파일+ν…ŒμŠ€νŠΈ+νŒ¨ν‚€μ§• (μžλ°” 컴파일, jar 생성 λ“±λ“±..

 

 

μ΄μœ λŠ” IntelliJ λŠ” λ‚΄λΆ€ JDK 둜 μ‹€ν–‰λΌμ„œ 잘 μž‘λ™ν–ˆλ˜ 것 κ°™κ³  (Setting gradle 17 둜 잘 μ„ΈνŒ…λ˜μ–΄μžˆμ—ˆμŒ..!)

Docker μ‚¬μš©μ„ μœ„ν•΄μ„œ ./gradlew build λ°©μ‹μœΌλ‘œ λͺ…λ Ήμ–΄λ₯Ό ν–ˆλ˜ 것인데 .. μ™œ μž‘λ™λ˜μ§€ μ•Šμ•˜μ„κΉŒ!

 

 

 

 

ν•΄κ²° 방법

 


Spring Boot 3.4.4 기반 ν”„λ‘œμ νŠΈμ—μ„œ `./gradlew clean build` λͺ…λ Ήμ–΄ μ‹€ν–‰ μ‹œ λ‹€μŒκ³Ό 같은 상황 λ°œμƒ

> Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.4.4.
  ...
  > Dependency requires at least JVM runtime version 17. This build uses a Java 11 JVM.

 

기쑴에 ν”„λ‘œμ νŠΈλ₯Ό Java 11둜 μ§„ν–‰ν•˜λ‹€κ°€ μƒˆλ‘œμš΄ ν”„λ‘œμ νŠΈλ₯Ό 17둜 ν•˜λ €λ‹ˆ 였λ₯˜κ°€ 터짐

버전이 λ§žμ§€ μ•Šλ‹€κ³  μ–΄μ°Œκ³ μ €μ°Œ

κΈ°μ‘΄ java 11이 λ‚¨μ•„μžˆμ—ˆλ‚˜λ³΄λ‹€.  μ‹Άμ–΄μ„œ λ³€κ²½!

 

 

 

1) ν™˜κ²½λ³€μˆ˜ κ°’ λ³€κ²½ 11 -> 17 ❌

 

jdk-17 μ„€μΉ˜ν•΄μ£Όκ³ 

https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html

 

μ‹œμŠ€ν…œ ν™˜κ²½λ³€μˆ˜μ— λ“€μ–΄κ°€μ„œ κΈ°μ‘΄ java 11 을 java 17 둜 변경해쀬닀. 

 

 

`./gradlew clean build` 

버전 λ³€κ²½ ν›„  λ‹€μ‹œ μ‹œλ„ν•΄λ΄€λŠ”λ°λ„ μ‹€νŒ¨ν•¨ ...

 

 

 

2) μž¬λΆ€νŒ… ❌

`./gradlew clean build` 

μž¬λΆ€νŒ… ν•˜κ³  μ‹€ν–‰ν•΄λ³΄λŠ”λ°λ„ μ‹€νŒ¨

 

 

 

 

3) `./gradlew clean build --warning-mode all` 으둜 성곡 βœ…

이후 `./gradlew clean build` 도 정상 μž‘λ™ν•˜κΈ° μ‹œμž‘ν•¨ !

 

 

 

 

μ—λŸ¬ 원인 μΆ”μΈ‘ 

 

1. Gradle 데λͺ¬μ΄ μžλ°” 11둜 μ‹€ν–‰λœ μƒνƒœμ˜€μŒ

Gradle은 데λͺ¬(gradle daemon)을 λ°±κ·ΈλΌμš΄λ“œμ—μ„œ μ‹€ν–‰μ‹œμΌœμ„œ λΉŒλ“œ 속도λ₯Ό λΉ λ₯΄κ²Œ ν•΄μ€Œ.
λ¬Έμ œλŠ” 이 데λͺ¬μ΄ 처음 싀행됐을 λ•Œμ˜ Java ν™˜κ²½μ„ κΈ°μ–΅ν•œλ‹€λŠ” μ μž„.
JAVA_HOME을 바꿔도, 이미 μ‹€ν–‰ 쀑인 데λͺ¬μ€ 계속 μžλ°” 11을 μ‚¬μš©ν–ˆμ„ 수 있음.
κ·Έλž˜μ„œ μžλ°” 버전을 λ³€κ²½ν•œ 이후에도 λΉŒλ“œκ°€ μ‹€νŒ¨ν–ˆμŒ.

 

 

2. --warning-mode all → Gradle λ‚΄λΆ€ μƒνƒœ 리셋 μœ λ„

--warning-mode all μ˜΅μ…˜μ„ μ£Όλ©΄, Gradle이 전체 슀크립트λ₯Ό λ‹€μ‹œ 뢄석함.
이 κ³Όμ •μ—μ„œ μ˜μ‘΄μ„± μž¬λ‹€μš΄λ‘œλ“œ, μΊμ‹œ λ¬΄νš¨ν™”, 데λͺ¬ μž¬μ‹œμž‘ 같은 λΆ€μˆ˜μ μΈ λ™μž‘μ΄ λ°œμƒν•  수 있음.
이둜 인해 μƒˆλ‘œμš΄ Java 17 ν™˜κ²½μ΄ μ μš©λμ„ κ°€λŠ₯성이 λ†’μŒ.