Se você quer ter um console do groovy no eclipse rapidamente, sem fazer download de plugins/IDEs, segue abaixo a dica.
Não precisa nem fechar o workspace, hehe...
1) Adicione o groovy no sistema se não tiver
No ubuntu basta digitar:
$ sudo apt-get install groovy
2) Crie novo projeto java no eclipse
Ctrl + N > Java Project > Next
Em Project Name digitei "console"
(nao precisa de printscreen disso né?)
3) Crie seu arquivo "console.java"
Ctrl + N > Class
Digite "console para o nome da classe. Sim, minusculo mesmo, pois isso não será uma classe...
Marque pra criar o metodo main, pra facilitar.
(tbm nao precisa de print disso...esse artigo é pra programadores java que estao indo pro grails...)
4) Adicione o groovy como ferramenta externa no eclipse
Menu: Run > External Tools > External Tools Configurations
No lado esquerdo, selecione Program e clique no icone de novo
Name: põe o que quiser... botei "groovy"
Location: /usr/bin/groovy (no caso do Ubuntu..no windows é só apontar pro groovy.exe)
Working Directory: ${workspace_loc:/console} (clique em "Browse Workspace" e selecione o projeto java)
Arguments: console.groovy
Apply pra não perder tudo
Por enquanto fizemos o seguinte: ao chamar a app externa groovy, o eclise fará o mesmo que:
$ cd {caminho-do-seu-workspace}/console
$ /usr/bin/groovy console.groovy
Importante: o groovy só executa arquivos .groovy. Entao precisamos criar
o link para o console.java
$ ln -s {caminho-do-seu-workspace}/console/console.java {caminho-do-seu-workspace}/console/console.groovy
No meu caso:
topera@topera-desktop:/dados/topera/workspace/console/src$ ls -l /home/topera/topera/workspaceteste/console/
total 8
-rw-r--r-- 1 topera topera 364 2011-04-21 12:18 console.class
lrwxrwxrwx 1 topera topera 55 2011-04-21 12:28 console.groovy -> /home/topera/topera/workspaceteste/console/console.java
-rw-r--r-- 1 topera topera 136 2011-04-21 12:18 console.java
Blz, voltando ao eclipse, devemos ter a mesma tela:
Pra ficar mais facil de chamar o groovy, na aba "Common", marque o check em "Display in favorites menu"
Apply > Close > Save
(se nao guardar este check, é bug do eclispe, faca novamente, hehe)
Vamos testar
Clique na seta setinha do botao do print abaixo ou va em:
Run > External Tools > groovy
Não aconteceu nada...imprima algo no console e tente novamente.
Pronto! Já estamos fazendo o eclipse chamar o groovy e este está lendo nosso arquivo java!
(obs: se nao funcionar pode ser pq a variavel de ambiente JAVA_HOME nao esta setada...)
5) Adicionando atalho de teclado
Pra nao ficarmos clicando toda hora, vamos adicionar o atalho
Window > Preferences > Filtre "keys > Na direita filtre por "run last"
Selecione "Run last launched external Tool" e adicione o atalho de sua preferencia.
Eu botei o Ctrl+Enter, pra ficar igual ao GroovyConsole / SQLDeveloper
6) Desligando erros de sintaxe
Vamos tranformar esse java em groovy.
Troque o codigo-fonte por isso.
Execute. Blz. Tudo ok. Agora vamos desligar o validador java (*)
(*) Lembre-se da regra basica:
"Todo codigo java funciona em groovy, mas nem todo codigo groovy funciona em java".
Por este motivo o validador está acusando erro.
Para desliga-lo, e ficarmos apenas com o auto-complete do java (muito util por sinal), faça:
a) Botao Direito no codigo-fonte > Preferences > Report Problemas as you Type (desmarque)
Depois:
b) Botao Direito na pasta do projeto > Properties > Filtre por "validation" > Marque "Enable project specific settings" e "suspen all validators"
E por ultimo
c) Botao Direito na pasta do projeto > Properties > Filtre por "builders" > Desmarque o java
Obs1: neste ultimo item 6) nao sei qual combinacao das 3 coisas resolve o problema. Sei que as tres dão certo :)
Obs2: se ainda assim nao funcionar, apague o console.java e crie novamente.
Tutorial feito com Eclipse 3.5.2, Ubuntu 10.04
UPDATE 1:
Para o autocomplete do java funcionar, é preciso ter um minimo de classe montado.
Entao, deixe esse trecho de codigo no final do console.java
class a {
static {
"".isEmpty(); //teste o autocomplete aqui...
}
}
UPDATE 2: