Olá, pessoal! O artigo de hoje quer compartilhar com vocês mais uma contribuição de um archetype Maven com AngularJS + Yeoman.
O motivo de criar esse archetype é que tenho trabalhado bastante nos últimos quatro meses com AngularJS e back-end Java e tem surgido novos projetos, alguns pequenos, outros de médio porte, e ter que fazer setup toda hora é um pouco cansativo. Então, para unir o útil ao agradável, resolvi um problema aqui no projeto para todos os projetos que vão trabalhar usando módulos no maven e o back-end será Java com front-end AngularJS, para evitar aquele tempo gasto em setup (mesmo que seja uma hora, já compensa). Eu já fiz outros archetypes e estão no meu github. O último era puro Java.
O que tem de legal nesse archetype? Bem, o que tem de legal é o seguinte:
- Hibernate 4.x já vem configurado com o Spring;
- Spring Core 3.x;
- MySql 5.x
- DBUnit;
- DAO Generic e Service Generic;
- Jersey 1.x;
- AngularJS 1.0.x;
- Yeoman Tools;
- Bootstrap.
No AngularJs eu optei pela versão estável ao invés da release candidate. Como usar? Simples. Para não repetir aqui o que já escrevi no readme.md do projeto, siga os passos da instalação do archetype no seu repositório local.
Instalado. E agora? Vamos criar um projeto e fazer uns ajustes como com qualquer template que vem com informações default e precisam ser ajustadas para atender ao nosso projeto.
Passo 01
Crie um novo projeto maven e escolha a opção All Catalogs e em seguida digite br. para filtrar e aparecer o archetype que acabou de instalar.
Passo 02
Escolha o archetype e preencha com as informações do seu projeto.
Passo 03
Clique em finish.
Passo 04
Seu projeto vai estar quebrado, conforme a imagem a seguir:
Passo 05
Abra o pom.xml do projeto webapps-web e remova a dependência webapps-core:
Passo 06
Adicione a dependência do seu projeto:
Passo 07
Seu projeto deve estar assim agora:
Passo 08
Vá na raiz do projeto e execute:
mvn tomcat:run
Aplicação deve subir. Agora acesse: http://localhost:8080/webapps-web/
Pronto, agora é só usar.
Claro que você vai precisar especificar as informações de banco de dados, estrutura do seu packages etc. Vou assumir que você já conhece os frameworks que o archetype aborda e sabe alterar, afinal de contas você não vai criar um projeto com Spring se não sabe mexer com o framework, concorda? Para facilitar, deixei comentários nos arquivos .xml, onde você deve alterar.
Abraços!