ํ๋ก๊ทธ๋๋ฐ ๊ณผ์ ํ๊ฒฝ ๊ตฌ์ถ์ ํ๋ฉด์ New Project๋ฅผ ํ ๋, ๋น์ฐํ ๊ธฐ๋ณธ์ธํ (IntelliJ)์ผ๋ก ํ๊ณ ๋์ด๊ฐ์๋๋ฐ ์ค๋ ๋น๋ ์์คํ ์ 'Gradle'๋ก ์ค์ ํ์๋ค. Gradle์ด๋ ๋ฌด์์ด๊ณ , ์ Gradle ์ ์ฌ์ฉํ๋ ์ง ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค. ๐

๐ ์ค๋ ํ๋ก์ ํธ๋ ๋น๋ ์์คํ ์ 'Gradle', JDK ๋ฒ์ ์ 17 ๋ฒ์ , Gradle DSL์ Groovy๋ก ํ์ฌ Create ํ์๋ค.
Gradle(๊ทธ๋๋ค)์ Groovy(๊ทธ๋ฃจ๋น)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ์คํ์์ค ๋น๋ ๋๊ตฌ์ด๋ค.

Gradle์ ๋๊ท๋ชจ ๋ค์ค ํ๋ก์ ํธ ์ํฐํ๋ผ์ด์ฆ ๋น๋๋ถํฐ ๋ค์ํ ์ธ์ด์ ๊ฑธ์น ๋น ๋ฅธ ๊ฐ๋ฐ ์์
์ ์ด๋ฅด๊ธฐ๊น์ง ๋ชจ๋ ๊ฒ์ ์ฒ๋ฆฌํ๋๋ก ์ค๊ณ๋ ํ์ฅ์ฑ์ด ๋ฐ์ด๋ ๋น๋ ์๋ํ ๋๊ตฌ์ด๋ค. Gradle์ ๋ชจ๋์ ์ฑ๋ฅ ์งํฅ ์ํคํ
์ณ๋ ๊ฐ๋ฐ ํ๊ฒฝ๊ณผ ์๋ฒฝํ๊ฒ ํตํฉ๋์ด Java, Kotlin, Scala, Android, Groovy, C++, Swift ์์ ์ ํ๋ฆฌ์ผ์ด์
์ ๋น๋, ํ
์คํธ, ๋ฐฐํฌํ๊ธฐ ์ํ ํ์ ์๋ฃจ์
์ด๋ค.
๐ ๏ธ
๋น๋: ์์ค์ฝ๋ ํ์ผ์ ์ปดํจํฐ์์ ์คํํ ์ ์๋ ๋ ๋ฆฝ ์ํํธ์จ์ด ๊ฐ๊ณต๋ฌผ๋ก ๋ณํํ๋ ๊ณผ์ ๋๋ ๊ทธ์ ๋ํ ๊ฒฐ๊ณผ๋ฌผ
๐Apache Groovy: Java๋ฅผ ๋ฐ์ ์ํจ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค. 2003๋ ์ ์ฒ์ ๊ณต๊ฐ๋์๊ณ , 2015๋ ๋ถํฐ ์ํ์น ์ํํธ์จ์ด ์ฌ๋จ์ด ๊ด๋ฆฌํ๊ณ ์๋ค.
๊ณต์ ๋ฌธ์์์ ์๊ฐํ๋ ์ฅ์ ์ ๋ค์๊ณผ ๊ฐ๋ค.
1. ๋ค์ํ ์ธ์ด๋ฅผ ์ง์ํ์ฌ ๋ชจ๋ ํ๋ซํผ์ ๋ฐฐํฌํ ์ ์๋ ํจํค์ง์ด๋ค.
2. ํ๋ถํ API์ ํ๋ฌ๊ทธ์ธ ๋ฐ ํตํฉ์ ์ํ๊ณ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ํํ ์ ์๋ค.
3. ์ด๊ณ ์ ๋น๋๋ก ํ์ฅ ๊ฐ๋ฐ์ ์คํํ ์ ์๋ค.
4. ์ปดํ์ผ ํํผ, ๊ณ ๊ธ ์บ์ฑ์ผ๋ก ์ฑ๋ฅ์ ์ถ๊ตฌํ๋ค.
Ant์ Maven๊ณผ ๊ฐ์ ์ด์ ์ธ๋ ๋น๋ ๋๊ตฌ์ ๋จ์ ์ ๋ณด์ํ๊ณ ์ฅ์ ์ ์ทจํฉํ์ฌ ๋ง๋ค์๋ค.
์์กด์ฑ ๊ด๋ฆฌ๋ฅผ ์ํ ๋ค์ํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๊ณ ๋น๋ ์คํฌ๋ฆฝํธ๋ฅผ XML ์ธ์ด๊ฐ ์๋ JVM์์ ๋์ํ๋ ์คํฌ๋ฆฝํธ ์ธ์ด '๊ทธ๋ฃจ๋น'๊ธฐ๋ฐ์ DSL(Domain Specific Language)๋ฅผ ์ฌ์ฉํ๋ค. โ ํ๋ก์ ํธ ์์ฑ์์ ์ ํํ ์ ์๋ค.
์ฌ์ง์ด Maven์ pom.xml์ Gradle์ฉ์ผ๋ก ๋ณํํ ์ ์์ผ๋ฉฐ Maven์ ์ค์ ์ ์ฅ์๋ ์ง์ํ๊ธฐ ๋๋ฌธ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ชจ๋ ๊ทธ๋๋ก ๊ฐ์ ธ๋ค ์ฌ์ฉํ ์ ์๋ค.
build.gradle ํ์ผ์ ๋น๋ ์คํฌ๋ฆฝํธ๋ผ๊ณ ํ๋ฉฐ ์๋ฐํ ๋งํ๋ฉด ๋น๋ ๊ตฌ์ฑ ์คํฌ๋ฆฝํธ(Build Configuration Script)๋ผ๊ณ ํ๋ค. ์์กด์ฑ์ด๋ ํ๋ฌ๊ทธ์ธ ์ค์ ๋ฑ๊ณผ ๊ฐ์ ๋น๋์ ํ์ํ ์ค์ ์ ํ๊ฒ ๋๋ค.
Gradle์ ์คํ ์์ ๋จ์, Gradle์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์คํฌ๋ฅผ ๊ตฌ์ฑํ์ฌ ์คํํ๋ฉฐ, ํ์คํฌ๋ฅผ ๊ตฌ์ฑํ๊ณ ์์ฑํ๋ ๊ฒ์ด ๋น๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ ๊ณผ์ ์ด๋ค.
๐ซ ์ฐธ๊ณ ์๋ฃ
Gradle์ด๋ ๋ฌด์์ผ๊น?
Gradle์ด๋? ์ ์ฌ์ฉํ๋์ง์ ๋ํด ์์ ๋ณด์.
์์ง์ ๊ฐ๋ฐํ๋ ํ๋ก์ ํธ๊ฐ ๊ฐ๋จํ ์ค์ต ๊ณผ์ ์ฌ์ ์ฒด๊ฐ์ด ์ ๋์ง ์์ง๋ง ๋์ค์ ๋ณธ๊ฒฉ์ ์ผ๋ก ํ๋ก์ ํธ ๊ฐ๋ฐ๋จ๊ณ์ ๋ค์ด๊ฐ์ ํ๋ก์ ํธ๊ฐ ๋ฌด๊ฑฐ์์ง๋ฉด Gradle์ ์ง๊ฐ๋ฅผ ์ ์ ์๊ฒ ๋ ๋ฏํ๋ค.
๐ญ Diary
๋งค์ผ ์์ด๊ณ ์์ฌ ์ธ์ ๊ฐ ๋์๋ดค์ ๋ ๋์๊ฒ ํฐ ๋์์ด ๋ 2025๋
์ ์ฒซ TIL!
์ทจ์
์ ์ค๋นํ๋ฉฐ ํน๊ฐ๊ณผ ๋ผ์ด๋ธ ์ธ์
์ ๋ง์ด ๋ฃ๊ฒ ๋๋ฉด์ ์ ์ ์๋ ์ฐพ์๋ฃ์ง ์์์๊น ํํ๋๋ ๋๋ ์ด๋ค.
๋ด๊ฐ ๊ฒฝํํ์ง ๋ชปํ ๋ค๋ฅธ ๊ธธ์ ๊ฒฝํํ ํํฐ๋ค์ ๊ฐ์น๊ด๊ณผ ๊ด์ ์ ๋ฃ๊ณ ์์ผ๋ฉด "๊ฐ๋ฐ์" ๋ผ๋ ์ง์
์ ๋ํด ๋ ๊ฐ๊น์์ง๊ณ ์๋ ๊ฒ ๊ฐ๋ค.