Java · Intermediário · Português · Técnico
projeto multi-módulo
Projeto Maven ou Gradle dividido em submódulos, cada um com seu build, coordenados por um projeto pai que lista os módulos.
Onde usar
Aparece em monorepos de backend: api, domínio e infraestrutura. Em review: 'esse módulo não deveria depender daquele'.
Em código
<!-- pom.xml do pai -->
<packaging>pom</packaging>
<modules>
<module>dominio</module>
<module>api</module>
</modules>Exemplos
Separamos o domínio num módulo do projeto multi-módulo.
O módulo de domínio não pode depender do módulo da API.
Cuidado
Módulo de build não é módulo JPMS, e dependência circular entre submódulos quebra o build.
Sinônimos
multi-module