Nesses últimos dias a equipe do Gradle anunciou o release 1.3. Essa nova versão traz atualizações importantes pois o torna mais estável e otimiza a forma com algumas tarefas são realizadas.
Os usuários de Scala devem comemorar pois foi introduzido a compilação incremental o que garante um grande ganho de velocidade.
Também foi corrigido e otimizado o mecanismo de resolução de dependencias.
Vale a pena conferir.
No post anterior falamos do Gradle, uma ferramenta que dentre outras coisas é muito boa para builds.
Uma outra característica importante dela é a integração com o Eclipse além de outras importantes ferramentas de desenvolvimento.
Nesse post focaremos no Gradle Support, um plugin desenvolvido pela equipe do Springsource para complementar o STS. A instalação, como sempre, é muito simples: Caso você esteja utilizando o STS basta ir ao Dashboard e na aba “extensions” localizar e instalar o plugin “Gradle Support”.
Caso não esteja utilizando o STS, basta no menu “Install New Software” utilizar o endereço:
http://dist.springsource.com/release/TOOLS/gradle
Uma sugestão adicional é instalar o plugin para o Groovy-Eclipse pois trará recursos adicionais à edição do build.gradle.
Após instalado, crie um novo projeto utilizando a tecla Command + N (ou Ctrl +N) e escolha Gradle/Gradle Project

Outra opção é importar um projeto pré-existente: file/import/Gradle/Gradle Project

Observe que após escolher a pasta que contém o build file, é necessário ainda clicar em “Build Model” e selecionar o “Project”
Por fim, utilize o Gradle Tasks View para acessar as tasks facilmente.
Já ha algum tempo que uso o Maven como ferramenta de build, mas preciso confessar que sempre tive meus contra-tempos com ele. No último projeto resolvi experimentar novamente o Ant integrado ao Ivy e o resultado foi que acabei com os problemas de dependencias mas ainda permaneceu o inconveniente de trabalhar com um xml e ter que definir todos por menores.
Resolvi então experimentar o Gradle, uma ferramenta de build baseada em Groovy que traz inúmeras vantagens em relação às anteriores citadas.
É possível personalizar toda a estrutura do projeto e também se beneficiar de tasks e comportamentos padronizados.
O fato de ser em groovy permite que seus scripts sejam escritos com muita flexibilidade lançando mão dos recursos de um build associados uma poderosa linguagem.
Instalando
Baixe e descompacte a ultima versão do Gradle em um diretório e em seguida crie em seu ambiente a variável GRADLE_HOME e aponte para a essa pasta. Modifique a variável PATH adicionando $GRADLE_HOME/bin à ela.
Após isso você poderá digitar gradle -version para se certificar que tudo está ok.
Um script
Crie uma nova pasta e dentro dela seu script com o nome de build.gradle
task tarefa1 << {
println "essa é a tarefa 1"
}
Salve-o e execute ainda nessa pasta: gradle tarefa1
O resultado será parecido com
gradle tarefa1
:tarefa1
essa é a tarefa 1
BUILD SUCCESSFUL
Total time: 2.741 secs
Ao digitar gradle tasks você verá a task “tarefa1” além de outras.
Podemos também definir a task padrão assim:
defaultTasks "tarefa1"
task tarefa1 << {
println "essa é a tarefa 1"
}
Agora já é possível executar o script apenas com gradle
Algo prático
Você poderá utilizar o Gradle para automatizar várias tarefas, mas compilar e integrar códigos serão as mais rotineiras. Vamos criar uma pasta src/main/java e nela salve o arquivo Project1.java
public class Project1{
public static void main(String[] args){
System.out.println("Wello World!");
}
}
Altere seu script para:
apply plugin:'java'
apply plugin:'application'
mainClassName = "Project1"
Por fim execute o script gradle run para que sua classe seja executada.