hrming

[기타] Maven 본문

기타

[기타] Maven

hrming 2024. 3. 5. 14:24

빌드 (Build)

- 작성한 소스코드(java), 프로젝트에서 쓰인 각각의 파일 및 자원 등 (.xml, .jpg, .jar, .properties)을 JVM이나 톰캣같은 WAS가 인식할 수 있는 구조로 패키징하는 과정 및 결과물


빌드 도구 (Build  Tool)

- 프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램

- 계속해서 늘어나는 라이브러리 추가, 프로젝트를 진행하며 라이브러리의 버전 동기화의 어려움을 해소하고자 등장

- 초기의 java 빌드 도구로 Ant를 많이 사용하였으나 최근 많은 빌드 도구들이 생겨나 Maven이 많이 쓰였고, 현재는 Gradle이 많이 쓰임. (Ant는 스크립트 작성도 많고, 라이브러리 의존 관리가 되지 않아 불편하다고 함..!)


Maven

- 자바용 프로젝트 관리 도구로 Apache Ant의 대안으로 만들어졌다.

- Ant와 마찬가지로 프로젝트의 전체적인 라이프 사이클을 관리하는 도구이며, 많은 편리함와 이점이 있어 널리 사용됨.

- Maven은 필요한 라이브러리를 특정 문서(pom.xml)에 정의해 놓으면 내가 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 작동하는데에 필요한 다른 라이브러리들까지 관리하여 네트워크를 통해서 자동으로 받아준다.

- 간단한 설정을 통한 배포 관리가 가능하다.

- 정해진 라이프사이클에 의하여 작업을 수행하며, 전반적인 프로젝트 관리 기능까지 포함 (Build Tool + Project Management) . 라이플사이클 관련 자세한 내용은 아래 블로그 참고!! 🤗👍

 


Maven 설정 파일

■ settings.xml

- 메이븐 빌드 툴과  관련한 설정파일

- MAVEN_HOME/conf 디렉토리에 위치 (메이븐 설치 시 기본 제공)

- settings.xml의 설정

- 메이븐을 빌드할 때 의존 관계에 있는 라이브러리, 플러그인을 중앙 저장소에서 개발자 PC로 다운로드하는 위치(로컬 저장소)의 기본 설정 'USER_HOME/.m2/repository' 인데 settings.xml에서 원하는 로컬 저장소의 경로를 지정, 변경할 수 있음. 

 

  POM (프로젝트 객체 모델, Project  Object Model)

- 메이븐을 이용하는 프로젝트의 root에 존재하는 xml파일

(하나의 자바 프로젝트에 빌드 툴을 maven으로 설정하면, 프로젝트 최상위 디렉토리에 'pom.xml'이라는 파일이 생성됨)

- Maven 기능을 이용하기 위해서 POM이 사용됨

- 파일은 프로젝트마다 1개이며, pom.xml만 보면 프로젝트의 모든 설정, 의존성을 알 수 있다.

- 다른 파일 이름으로도 지정할 수 있지만, pom.xml로 사용하기를 권장


 

출처 및 참고: 

https://goddaehee.tistory.com/199

 

[Maven] Maven 이란? (정의, 예제)

[Maven] 메이븐 이란? (정의, 예제) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 메이븐 알아보기 ] 입니다. : ) 1. 빌드 (Build) #1 빌드란? - 소스코드 파일을 컴퓨터에서 실행할 수 있는 독립 소프트웨

goddaehee.tistory.com

 

'기타' 카테고리의 다른 글

[기타] CSR & SSR  (0) 2024.03.06
[기타] Commit Message  (0) 2024.03.05
[기타] Google Font  (0) 2024.03.02
[Sublime Text] 일괄 수정 기능  (0) 2024.01.30
[기타] JSON (JavaScript Object Notation)  (0) 2023.05.27
Comments