VS Code 에서 생성할 때
- ctrl + shift + p 눌러서 command palette 실행
- Maven: Generate from Maven Archetype 입력 후 엔터
- archetype 입력 창에서 More… 누른 뒤, pom-root 입력하고 목록에서 선택
- groupId, artifactId, version, packaging 정보 입력 하여 메이븐 parent 프로젝트 생성
- pom.xml 확인하고 <package>pom</package> 인지 확인
- 다시 1, 2 과정 수행
- archetype 입력 창에서 More… 누른 뒤, maven-archetype-quickstart 입력하고 목록에서 선택
- 위 4번 과정 수행
- pom.xml 확인하고 <package>jar (혹은 war)</package> 인지 확인, 필요한 타입으로 수정
spring project 인 경우, spring intializr 로 프로젝트 생성하거나 이클립스에서 프로젝트 생성해서 수동으로 pom.xml 파일 수정이 필요하다.
Parent 프로젝트의 pom.xml 파일에 하위 프로젝트의 내용을 <module> 태그를 이용해서 정의해줘야 한다.
전체 프로젝트 빌드 시, 모듈 빌드 순서는 parent 프로젝트에 <module> 이 선언된 순서대로 된다.
하위 모듈 간에 의존관계가 있을 경우, 참조할 프로젝트의 정보를 pom.xml 파일 <dependency> 로 선언해야 한다.
예를 들어, A 프로젝트와 B 프로젝트가 있고, B 가 A를 임포트해서 사용한다면, A 의 groupId 및 artifactId 이용해서 B 의 pom.xml 파일에 선언해줘야 한다.
참고
- https://stackoverflow.com/questions/6328778/how-to-create-an-empty-multi-module-maven-project
- http://enosent.tistory.com/52
- http://wonwoo.ml/index.php/post/601