Java

[Java] - 메이븐 프로젝트

dev_SiWoo 2020. 11. 4. 15:41

Maven

  Java기반의 프로젝트의 라이프사이클을 관리 할 수 있도록 도와주는 빌드도구를 Maven이라한다.

컴파일과 빌드르 동시에 수행하거나 테스트하는 것은 물론이요 서버 배포에 필요한 war파일 생성과 같은 자원관리를 할 수 있는 환경이 조성되어있는 빌드 도구로서 라이브러리 관리기능 또한 매우 유용하다.

 

프로젝트를 진행하다보면 수많은 라이브러리들을 활용하게 되고 점점 많아지는 라이브러리들을 일일히 관리하기 힘들어지게 된다.

 

그런데 Maven은 코드 몇줄로 필요한 라이브러리들을 가져올 수 있고 해당 라이브러리가 필요로하는 다른 의존라이브러리 까지 자동으로 불러와준다. 

 

pom.xml 파일에 필요한 라이브러리만 적으면 Maven이 알아서 다운받고 설치해주고 경로까지 지정해준다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
 
    <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.3.0</version>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
    <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client</artifactId>
        <version>2.7.0</version>
    </dependency>
  </dependencies>
cs

 

위 코드는 pom.xml 파일의 일부분인데 위 코드처럼 <dependencies> 태그 사이에 <dependency>태그로 필요한 라이브러리를 한개씩 한개씩 넣어준다.

 

<dependency> 태그는 아래 주소의 사이트에서 검색하여 원하는 라이브러리의 태그들을 복붙할 수 있다.

mvnrepository.com/

 

Maven Repository: Search/Browse/Explore

Adobe Experience Manager Core WCM Components Core Bundle Last Release on Oct 29, 2020

mvnrepository.com

위 사이트에서 자신이 원하는 라이브러리를 검색하면 다음과 같이 Maven 태그를 제공하고 클릭만해도 복사가 된다.

 

그럼 위처럼 라이브러리가 추가된 것을 확인 할 수 있다.