Resumo


ObjetivoMostrar o processo de checkout e desenvolvimento no projeto Mammon.
AplicaçãoDesenvolvedores no projeto Mammon.

Tarefas Relacionadas

Nenhuma.



Informações

Palavras-chave

Informar nas labels qual aplicacao foi realizada o how to. EX: kb-jira, kb-confluence, kb-xx, etc

Referências

Nenhuma.



Procedimento

Cenário

Você quer desenvolver (trabalhar) no projeto Mammon e não sabe como fazer para obter o código-fonte e fazer evoluções.

Procedimento

1 - Instalar o JDK 1.8 64bits

Baixar o website da Oracle, e instalar em uma pasta no seu Sistema Operacional

Após isso, configurar a varável de ambiente:

  • JAVA_HOME = <diretório da instalação do Java>
  • JDK_HOME = <diretório da instalação do Java>

Isso deve ficar assim:

Após isso, adicionar o diretório bin do JDK do Java no seu Path do Sistema Operacional, para que comandos como javac, jps e outros estejam acessíveis. Ou seja, o teste abaixo deve funcionar mostrando a versão do Java e as opções do JPS, por exemplo:

(info) Veja seção #2 abaixo, para ver como configurar variávies de ambiente no Windows e como colocar elas dentro do path do Sistema Operacional.

2 -Instale o Maven

Baixe e instale o Maven em um diretório local da sua máquina.

A 3layer recomenda fortemente que você baixe o SDK da Atlassian, o qual já possui um Maven pré-configurado para projetos de desenvolvimento Atlassian que usam o Mammon. Embora não seja obrigatório, isso facilita bastante quando você vai usar o Mammon para proejetos de plugins Atlassian. O Maven da Atlassian é um Maven que, além de utilizar os repositórios públicos da Apache, também acessa repositórios públicos da Atlassian, para obter mais dependências. Ou seja, ele é um Maven como qualquer outro, mas com mais repositórios configurados.

Apósi instalado, configure as variáveis de ambiente do seu Maven no Sistema Operacional, como:

  • MVN_HOME = <diretório de instalação do seu Maven>
  • MAVEN_HOME = <diretório de instalação do seu Maven>

Elas devem ficar assim:

Inclua o executável do Maven na linha de comando do Sistema Operacional, colocando pelo menos uma das variáveis acima dentro do path do sistema + o diretório bin, como:

Isso deve ficar assim:

Teste então o Maven, com o comando mvn -version:

3 - Configure seu Maven com o Nexus da 3layer

O projeto Mammon utiliza o Nexus da 3layer para armazenamento de artefatos. Portanto, você deve fazer a seguinte configuração no seu Maven:

Baixe o arquivo settings.xml para sua máquina, e salve-lo dentro da sua pasta de configurações .m2 do Maven, como:

4 - Clonar os Repositórios do Bitbucket

O código do Mammon é público para leitura, e pode ser acessível nas URL abaixo:

https://3layer.com.br/bitbucket/projects/MM

Devem existir os repositórios baixo:

Basta realizar a clonagem do branch Development de cada um dos repositórios para a sua máquina local.

Se você estiver dentro de um desses grupos de usuário (veja no seu Profile de usuário quais grupos você pertence), você terá acesso para escrita nos repositórios:

  • 3layer-mammon-administrators
  • 3layer-mammon-coordinators
  • 3layer-mammon-developers
  • 3layer-mammon-managers
  • 3layer-mammon-qa

Se não estiver logado, você pode fazer a clonagem, mas não conseguirá fazer push de volta para o repositório de origem.

O resultado das clonagens deve ser algo como isso:

Entre em cada repositório, e garanta que você está com o branch Development ativo, conforme exemplo abaixo:

5 - Builds Locais

Uma vez baixados os projetos, realize a o build e instalação locais, entrando em cada um deles e executando o comando mvn install na seguinte ordem:

  1. mammon-base
  2. mammon-core
  3. mammon-message
  4. mammon-business
  5. mammon-Atlassian

Exemplo:

6 - Entendendo os repositórios Mammon

Os repositórios Mammon constituem o arcabouço para todos os desenvolvimentos de projetos da 3layer, sendo assim organizados:

RepositórioConteúdo
mammon-baseContém todas configurações para os demais projetos, com controles de qualidade de código e versões de bibliotecas. É usado por herança nos outros projetos (concieto de "POM Parent") para que todos os projetos tenham sempre os mesmos padrões. Alterações nele se propagam automaticamente para todos os outros projetos. Isso pode ser bom, no sentido atualizar a versão de uma biblioteca, como poder "ruim", no sentido de alterar as rergas de tabulação de código-fonte ou Javadoc, o que obrigaria refatoração de todos os projetos derivados.
mammon-core
mammon-message
mammon-business
mammon-atlassian


6 - Próximos Passos

A partir daqui, recomenda-se você

ObservaçõesPara