Maven
- 2002 https://maven.apache.org
- java build tool
- ๋น๋ = ์ปดํ์ผ + ํจํค์ง + ์ผ๊ด์์
- JAVA_HOME needed
- ์ ํํ๋ ์์
ํ์ด์ฆ(phase)
- ์๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํ์ผ ์์กด์ฑ ๊ด๋ฆฌ
- ์คํ๋ง ํ๋ ์์ํฌ์ ๋ฐ์ ํ ๊ด๊ณ
install
- sdkman
- sdkman ์ถ์ฒ
- JDK ์ค์น ๋ฐ JAVA_HOME ํ๊ฒฝ๋ณ์ ํ์
- https://maven.apache.org ์์น์์
apache-maven-*.*.*-bin.zip
๋ค์ด๋ก๋
- download and unzip
- ํ๊ฒฝ๋ณ์ %Path%;\path\to\maven\bin
- mac
brew install maven
run
- ํ๊ฒฝ๋ณ์ ์ค์ ํ ์๋ก cmd์ฐฝ์ ๋์ฐ๊ณ
mvn -v
์คํ
POM
- Project Object Model
- ๋ฉ์ด๋ธ์ pom.xml ๊ธฐ๋ฐ์ผ๋ก ์คํ
mvn archetype:generate -DgroupId=com.okdevtv.java -DartifactId=okdevtv -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
groupId : com.okdevtv.java, ํ๋ก์ ํธ ํจํค์ง
artifactId : okdevtv, ํ๋ก์ ํธ ์ด๋ฆ
archetypeArtifactId : maven-archetype-quickstart, ํ
ํ๋ฆฟ ์ด๋ฆ
mvn package
mvn ์คํ์ ํ์ํ jarํ์ผ ๋ค์ด๋ก๋
ํ๋ก์ ํธ ๋น๋(์ปดํ์ผ, ํ
์คํธ, ํจํค์ง)์ ํ์ํ jarํ์ผ ๋ค์ด๋ก๋
๋ ๋ฒ์งธ ์คํ์ ๋ก์ปฌ์ ์ ์ฅ๋ jar ์ฌ์ฉ์ผ๋ก ๋นจ๋ผ์ง
๋ฉ์ด๋ธ phase
- validate
- compile
- test
- package
- integration-test
- verify
- install
- deploy
๊ธฐํ
- clean
- site
mvn tomcat:run
mvn spring-boot:run
๋ฉ์ด๋ธ ์ ์ฅ์
- ๋ก์ปฌ, ์๊ฒฉ ์ ์ฅ์๋ก ๊ตฌ๋ถ
~/.m2/repository
๊ธฐ๋ณธ ์์น
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ๋ณด๋ http://mvnrepository.com ์์ ๊ฒ์ ๊ฐ๋ฅ
build file name
<build>
<finalName>WhatEverYouLikey</finalName>
</build>
to gradle
- pom.xml to build.gradle
gradle init
ref
- 5๋ถ ๋ฉ์ด๋ธ
- Polyglot maven