Primeiramente baixe o projeto. Logo apΓ³s baixa-lo, no diretΓ³rio raiz do projeto, execute o comando a seguir para que o projeto seja compilado e adicionado no seu repositorio local.
mvn clean install
Agora fora do diretΓ³rio do projeto(em qualquer outro), com o comando a seguir podemos gerar um novo projeto no modo interativo com base no archetype construido acima.
mvn -B archetype:generate \
-DarchetypeGroupId=dev.zevolution \
-DarchetypeArtifactId=archetype--spring-boot \
-DarchetypeVersion=0.0.1-SNAPSHOT \
-DgroupId=dev.zevolution \
-DartifactId=api--teste \
-Dversion=0.0.1-SNAPSHOT \
-DartifactIdToPackage=netflixhexagonalarchitecture
Descritivo de cada propriedade:
- archetypeGroupId: groupId do arquΓ©tipo maven a ser utilizado como base
- archetypeArtifactId: artifactId do arquΓ©tipo maven a ser utilizado como base
- archetypeVersion: versΓ£o do arquΓ©tipo maven a ser utilizado
- groupId: groupId que serΓ‘ utilizado no projeto criado a partir do arquΓ©tipo
- artifactId: artifactId que serΓ‘ utilizado no projeto criado a partir do arquΓ©tipo
- version: versΓ£o inicial a ser utilizado no projeto cirado a partir do arquΓ©tipo
- artifactIdToPackage: nome do pacote raiz a ser utilizado(veja abaixo os exemplos 1, 2 e 3).
- Por padrΓ£o este Γ© um parΓ’metro obrigatΓ³rio, caso nenhum valor for inserido, o nome do pacote raiz serΓ‘ o artifactId(formatado contendo somente letras)
- Caso deseje criar subpackage para categorizar, utilize "/", ex: architecture/netflixhexagonal
Exemplo 1: Utilizando -DartifactIdToPackage=netflixhexagonalarchitecture
π¦ src
β£ π¦ main
β β£ π¦ java
β β β£ π¦ dev
β β β β£ π¦ zevolution
β β β β β£ π¦ netflixhexagonalarchitecture
β β β β β β£ π adapter
β β β β β β£ π bootstrap
β β β β β β£ π internal
β β β β β β π Application.java
β£ π¦ main/resources
β£ π .gitignore
β£ π Dockerfile
β£ π pom.xml
β π README.MD
Exemplo 2: Utilizando -DartifactIdToPackage=architecture/netflixhexagonal
π¦ src
β£ π¦ main
β β£ π¦ java
β β β£ π¦ dev
β β β β£ π¦ zevolution
β β β β β£ π¦ architecture
β β β β β β£ π¦ netflixhexagonal
β β β β β β β£ π adapter
β β β β β β β£ π bootstrap
β β β β β β β£ π internal
β β β β β β β π Application.java
β£ π¦ main/resources
β£ π .gitignore
β£ π Dockerfile
β£ π pom.xml
β π README.MD
Exemplo 3 : NΓO utlizando a propriedade -DartifactIdToPackage
e passando artifactId
como -DartifactId=api--teste
. Veja que qualquer caracter diferente de a-z, serΓ‘ removido
π¦ src
β£ π¦ main
β β£ π¦ java
β β β£ π¦ dev
β β β β£ π¦ zevolution
β β β β β£ π¦ apiteste
β β β β β β£ π adapter
β β β β β β£ π bootstrap
β β β β β β£ π internal
β β β β β β π Application.java
β£ π¦ main/resources
β£ π .gitignore
β£ π Dockerfile
β£ π pom.xml
β π README.MD