Gradle - Coffee-Street/Document GitHub Wiki
Gradle
Gradle Script
Gradle Wrapper
์ด๋ฏธ ์กด์ฌํ๋ ํ๋ก์ ํธ๋ฅผ ์๋ก์ด ํ๊ฒฝ์ ์ค์นํ ๋ ๋ณ๋์ ์ค์น๋ ์ค์ ๊ณผ์ ์์ด ๊ณง ๋ฐ๋ก ๋น๋ํ ์ ์๊ฒ ํ๊ธฐ ์ํจ์ด๋ค.
Java๋ Gradle๋ ์ค์นํ ํ์๊ฐ ์๋ค. ๋ํ ๋ก์ปฌ์ ์ค์น๋ Gradle ๋๋ Java์ ๋ฒ์ ๋ ์ ๊ฒฝ์ธ ํ์๊ฐ ์๋ค. ๋ฐ๋ผ์ ํญ์ Wrapper๋ฅผ ์ฌ์ฉํ ๊ฒ์ ๊ถ์ฅํ๋ค.
gradlew
์ ๋์ค์ฉ ์คํ ์คํฌ๋ฆฝํธ๋ค. Gradle๋ก ์ปดํ์ผ์ด๋ ๋น๋ ๋ฑ์ ํ ๋, ์๋์ ๊ฐ์ด ํ๋ฉด ๋ก์ปฌ์ ์ค์น๋ gradle์ ์ฌ์ฉํ๋ค.
gradle build
์ด ๊ฒฝ์ฐ Java๋ Gradle์ด ์ค์น๋์ด ์์ด์ผ ํ๊ณ , ์๋ก๋ฐ์ ํ๋ก์ ํธ์ Gradle ๋ฒ์ ๊ณผ ๋ก์ปฌ์ ์ค์น๋ Gradle ๋ฒ์ ์ด ํธํ๋์ง ์์ผ๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค. ๋ฐ๋ผ์ Wrapper๋ฅผ ์ฌ์ฉํ๋ฉด ์๋์ ๊ฐ์ด ์คํํ๋ค.
./gradlew build
gradlew.bat
์๋์ฐ์ฉ ์คํ ๋ฐฐ์น ์คํฌ๋ฆฝํธ๋ค. ์๋์ฐ์์ ์คํ ๊ฐ๋ฅํ๋ค๋ ์ ๋ง ์ ์ธํ๋ฉด gradlew์ ๋์ผํ๋ค.
gradle/wrapper/gradle-wrapper.jar
Wrapper ํ์ผ์ด๋ค. gradlew๋ gradlew.bat ํ์ผ์ด ํ๋ก์ ํธ ๋ด์ ์ค์นํ๋ ์ด ํ์ผ์ ์ฌ์ฉํ์ฌ gradle task๋ฅผ ์คํํ๊ธฐ ๋๋ฌธ์ ๋ก์ปฌ ํ๊ฒฝ์ ์ํฅ์ ๋ฐ์ง ์๋๋ค. (์ค์ ๋ก๋ Wrapper ๋ฒ์ ์ ๋ง๋ ๊ตฌ์ฑ๋ค์ ๋ก์ปฌ ์บ์์ ๋ค์ด๋ก๋ ๋ฐ์)
gradle/wrapper/gradle-wrapper.properties
Gradle Wrapper ์ค์ ํ์ผ์ด๋ค. ์ด ํ์ผ์ wrapper ๋ฒ์ ๋ฑ์ ๋ณ๊ฒฝํ๋ฉด task ์คํ์, ์๋์ผ๋ก ์๋ก์ด Wrapper ํ์ผ์ ๋ก์ปฌ ์บ์์ ๋ค์ด๋ก๋ ๋ฐ๋๋ค.
build.gradle
์์กด์ฑ์ด๋ ํ๋ฌ๊ทธ์ธ ์ค์ ๋ฑ์ ์ํ ์คํฌ๋ฆฝํธ ํ์ผ์ด๋ค.
settings.gradle
ํ๋ก์ ํธ์ ๊ตฌ์ฑ ์ ๋ณด๋ฅผ ๊ธฐ๋กํ๋ ํ์ผ์ด๋ค. ์ด๋ค ํ์ํ๋ก์ ํธ๋ค์ด ์ด๋ค ๊ด๊ณ๋ก ๊ตฌ์ฑ๋์ด ์๋์ง๋ฅผ ๊ธฐ์ ํ๋ค. Gradle์ ์ด ํ์ผ์ ๊ธฐ์ ๋๋๋ก ํ๋ก์ ํธ๋ฅผ ๊ตฌ์ฑํ๋ค. ํด๋น ํ์ผ์ ์ด์ฉํ์ฌ ๋ฉํฐ ํ๋ก์ ํธ๋ฅผ ๊ตฌ์ฑํ ์ ์๋ค.