[java] Maven을 사용하여 멀티모듈 프로젝트 배포하기

이번 포스트에서는 Maven을 사용하여 멀티모듈 프로젝트를 배포하는 방법을 알아보겠습니다. 멀티모듈 프로젝트는 여러 개의 하위 프로젝트로 구성되어 있으며, 각각의 모듈은 독립적으로 개발하고 배포할 수 있습니다.

Maven 멀티모듈 프로젝트 구성하기

먼저, 멀티모듈 프로젝트를 구성하기 위해 Maven의 pom.xml 파일을 설정해야 합니다. 각 모듈의 디렉토리에는 각각의 pom.xml이 있어야 합니다. 최상위 프로젝트의 pom.xml에는 각 모듈을 포함하는 <modules> 섹션을 추가해야 합니다. 예를 들어, 다음과 같이 구성할 수 있습니다:

<project>
  <groupId>com.example</groupId>
  <artifactId>my-multi-module-project</artifactId>
  <version>1.0.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  
  <modules>
    <module>module-one</module>
    <module>module-two</module>
  </modules>
</project>

위 예시에서 module-onemodule-two는 각각의 모듈 프로젝트를 나타냅니다.

모듈 프로젝트 배포하기

멀티모듈 프로젝트를 배포하려면 각각의 모듈 프로젝트에 대해 Maven 배포 플러그인을 설정해야 합니다. 예를 들어, module-onepom.xml 파일에 다음과 같이 플러그인을 추가할 수 있습니다:

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-deploy-plugin</artifactId>
      <version>3.0.0-M2</version>
    </plugin>
  </plugins>
</build>

각 모듈에 대해 플러그인을 추가한 후에는 Maven에서 mvn deploy 명령을 실행하여 프로젝트를 배포할 수 있습니다. 이 때, 최상위 프로젝트에서 mvn deploy를 실행하면 모든 모듈이 배포됩니다. 모듈을 개별적으로 배포하려면 각 모듈 디렉토리에서 mvn deploy를 실행하면 됩니다.

배포된 모듈 사용하기

다른 프로젝트에서 배포된 모듈을 사용하려면 해당 모듈을 의존성으로 추가해야 합니다. 의존성은 Maven의 pom.xml 파일에 추가하여 관리할 수 있습니다. 예를 들어, module-one을 의존성으로 사용하려면 다음과 같이 pom.xml 파일에 추가할 수 있습니다:

<dependencies>
  <dependency>
    <groupId>com.example</groupId>
    <artifactId>module-one</artifactId>
    <version>1.0.0-SNAPSHOT</version>
  </dependency>
</dependencies>

의존성을 추가한 후에는 Maven에서 프로젝트를 빌드하면 배포된 모듈을 사용할 수 있습니다.

결론

Maven을 사용하여 멀티모듈 프로젝트를 배포하는 방법에 대해 알아보았습니다. 멀티모듈 프로젝트를 구성하고 배포하고 다른 프로젝트에서 사용하는 방법에 대해 배웠습니다. Maven을 효과적으로 활용하여 프로젝트를 관리하고, 코드의 재사용성과 유지보수성을 향상시킬 수 있습니다.

참고 자료: