Márcio d'Ávila, 21 de agosto de 2007.
Apesar do Eclipse ser o IDE mais popular para desenvolvimento Java, os novos usuários em geral encontram uma grande dificuldade para começar a utilizá-lo: o Eclipse é composto de um componente principal (o Projeto Plataforma Eclipse) — inclui ambiente básico e os recursos fundamentais para desenvolvimento Java padrão — mais diversos sub-projetos e componentes adicionais, distribuídos na forma de plug-ins que se integram à plataforma.
Os plug-ins estendem a funcionalidade do ambiente e acrescentam suporte a recursos e tecnologias específicos. Muitos plug-ins são desenvolvidos como sub-projetos da Fundação Eclipse em Eclipse.org. Há também uma enorme variedade de plug-ins desenvolvidos por terceiros, tanto livres quanto comerciais.
Além da dificuldade de se selecionar, baixar e integrar diversos projetos e seus plug-ins necessários e mais adequados ao uso desejado para o Eclipse, ainda não há assistente de instalação off-line oficial do Eclipse, apenas um mecanismo de atualização on-line.
As dificuldades são maiores para quem quiser utilizar o Eclipse no desenvolvimento corporativo Java EE, que em geral requer muitos componentes e envolve a instalação do Eclipse IDE em vários computadores da equipe de desenvolvimento. Montar uma instalação padronizada e adequada do Eclipse IDE pode se tornar um quebra-cabeças.
Veja a seguir como têm evoluído os lançamentos da Fundação Eclipse e quais as opções existentes para distribuição e instalação do Eclipse IDE, em especial para os dois lançamentos mais recentes Eclipse 3.2 (2006) e 3.3 (2007).
Opções de distribuição e instalação
Antes do Eclipse 3.2
Eclipse download hell (em inglês), por Simon Willison, 27 denovembro de 2004.
Eclipse 3.2 Callisto
Para o lançamento da plataforma Eclipse 3.2 em junho de 2006, a Fundação Eclipse.org criou um esforço de lançamento anual simultâneo e coordenado de vários projetos, visando garantir maior integração e compatibilidade entre eles e a plataforma principal em questão. O codinome dado a esse lançamento simultâneo do Eclipse 3.2 foi Callisto.
A página de introdução do Eclipse Callisto para Java sugere que você:
- baixe o Eclipse SDK ou o Platform Runtime Binary;
- depois instale on-line os componentes adicionais desejados, utilizando o Update Manager do Eclipse (menu Help), a partir do repositório unificado Eclipse Callisto Discovery Site.
Isto ainda não é muito prático, principalmente em equipes com vários desenvolvedores, onde é melhor um download único e diversas instalações off-line. A instalação on-line pelo Update Manager requer que cada usuário baixe individualmente os compoentes adicionais.
Outra opção é utilizar o velho download hell: peregrinar pela área de download de cada projeto de interesse em Eclipse.org, baixar os pacotes necessários de seus componentes e depois extrair um a um deles, para instalação. Isso permite total controle dos pacotes baixados, mas é ainda mais trabalhoso.
Eclipse 3.3 Europa e EPP
O novo projeto Eclipse Packaging Project (EPP) foi criado em fevereiro de 2007, por iniciativa principal da empresa Innoopract — criadora da distribuição independente Yoxos — e com contribuições das empresas Instantiations e Xored Software.
A primeira proposição do EPP, adotada no lançamento Eclipse 3.3 Europa em Junho de 2007, foi uma nova página de downloads para o Eclipse, que oferece opções de pacotes com vários recursos inclusos (veja adiante descrição dos projetos/siglas), por perfil de uso.
Assim, a atual página principal Eclipse Downloads oferece os seguintes Eclipse Europa Packages como pacotes ZIP para baixar:
Para os recursos adicionais, o Europa disponibiliza, assim como no Callisto, um repositório unificado com todos os projetos, o Europa Update Site. Veja Adding Features from the Europa Update Site (vídeo).
O projeto EPP visa também desenvolver, no futuro, um instalador para o Eclipse e ferramentas para criação de pacotes (zip/tar para baixar) a partir de um site de atualização, algo provavelmente inspirado no inovativo mecanismo Eclipse Discovery (antigo Yoxos On Demand) da distribuição Yoxos, da Inoopract.
Outras distribuições Eclipse
Instituições independentes oferecem gratuitamente pacotes de distribuição que já integram diversos componentes adequados a determinado perfil de uso, facilitando imensamente o download e a instalação.
Eis a seguir algumas distribuições independentes do Eclipse, em tabela comparativa.
× | Pro | Contra |
Red Hat | Provê assistente de instalação Java. Inclui as ferramentas Java EE profissionais trazidas do Exadel Studio Pro, mais os plug-ins JBoss Tools. | Foco principal nas tecnologias JBoss. Não inclui outros plugins software livre de terceiros que podem ser úteis e complementares. Ainda está em beta. |
EasyEclipse | Provê assistente de instalação e integra, além de projetos Eclipse.org, diversos bons plug-ins software livre adicionais de terceiros. | Reempacota os plugins do Eclipse e de terceiros inclusos, usando sua própria estrutura de pacotes. As ferramentas inclusas para Java EE não são tão profissionais quanto as incorporadas pela Red Hat/JBoss. |
IBM | Oferece o pacote de distribuição Enterprise mais completo/abrangente em projetos do Eclipse.org inclusos, para Callisto e Europa. | Deixa de fora quaisquer plug-ins de terceiros, que poderiam agregar mais recursos e produtividade. Não possui instalador/desinstalador. |
Lomboz | Leve, distribuição voltada para Web (WTP) com alguns plugins adicionais úteis. Opções de pacote tudo-incluso ou componentes para serem adicionados a um ambiente Eclipse já existente. | Não possui instalador/desinstalador. |
Tiny Eclipse | Distribuição otimizada para reduzir o tamanho do download, inclui os componentes Java EE do Europa 3.3 e instalador (Windows/Linux). | Não inclui plug-ins de terceiros. |
Eclipse Callisto e Europa
- Projeto principal
-
O Eclipse SDK inclui:
- Lançamento simultâneo de projetos
Projeto | Aplicação | Versão no |
Callisto | Europa |
Eclipse Project - Platform, JDT, PDE, Equinox | Programa principal, núcleo do Eclipse IDE | 3.2 | 3.3 |
AspectJ Development Tools (AJDT) | Prog. orientada a aspecto (AOP) | - | 1.5 |
Business Intelligence and Reporting Tools (BIRT) | Relatórios, gráficos, BI | 2.1 | 2.2 |
Buckminster | Automação build, montagem, deploy | - | 0.1.0 |
C/C++ Development Tools (CDT) | Programação C/C++ | 3.1 | 4.0 |
Data Tools Platform (DTP) | SQL, acesso a SGBDs | 1.0 | 1.5 |
Device Software Development Platform - Device Debugging (DSDP.DD) | - | 0.9 |
Device Software Development Platform - Target Management (DSDP.TM) | - | 2.0 |
Dynamic Languages Toolkit (DLTK) | Linguagens dinâmicas: PHP, Perl, Ruby, JS... | - | 1.0 |
Dash (Eclipse Monkey) | Dashboard, automação de rotinas (script) | - | 1.0 |
Eclipse Communication Framework (ECF) | Comunicações client-server (p2p) ou de grupo | - | 1.0 |
Eclipse Modeling Framework (EMF) | Modelos de dados estruturados | 2.2 | 2.3 |
Eclipse Modeling Framework Technologies (EMFT) - Query, Transaction, Validation | - | 1.1 |
Graphical Editing Framework (GEF) | Edição gráfica/visual | 3.2 | 3.3 |
Graphical Modeling Framework (GMF) | Modelagem gráfica (com EMF, GEF) | 1.0 | 2.0 |
Model Development Tools (MDT) | Metamodelos (c/EMF): XML, UML... | - | 1.0 |
Model to Text (M2T) - JET | Gerar artefatos textuais de modelos | - | 0.8 |
Mylyn [ex Mylar] | Gerenciamento de tarefas: Bugzilla, Trac, JIRA... | - | 2.0 |
SOA Tools Platform (STP) | Arquitetura Orientada a Serviços e SCA | - | 0.6 |
Test and Performance Tools Platform (TPTP) | Profiling, teste, desempenho | 4.2 | 4.4 |
Visual Editor (VE) | Edição gráfica GUI: Swing, SWT | 1.2 | - |
Web Tools Platform (WTP) | Web/HTML/CSS... (WST) e Java EE (JST) | 1.5 | 2.0 |
Eclipse em Português
A IBM Rational em geral doa, algum tempo após o lançamento de cada versão da plataforma Eclipse, pacotes de tradução para a maioria dos projetos Eclipse, disponíveis em diversos idiomas, inclusive Português do Brasil.
Os pacotes de tradução são chamados National Language packs (NLpaks). Em cada projeto, os arquivos de tradução são agrupados em quatro pacotes, cada um contendo certo conjunto de idiomas inclusos: NLpack1, NLpack2, NLpack2a e NLpackBidi.O Grupo 1 (NLpack1) é o que inclui suporte a Português do Brasil, entre vários outros.
Portanto, para usuários brasileiros, só é necessário instalar os pacotes de tradução NLpack1.
Quando um pacote de tradução apropriado está instalado no Eclipse, o ambiente automaticamente reconhece o idioma local e apresenta os respectivos elementos de interface traduzidos.
- NLpacks para Eclipse 3.3 Europa
Ainda não disponíveis.
- NLpacks para Eclipse 3.2 Callisto
Os kits de tradução do Eclipse 3.2 consistem em um (ou mais) pacote ZIP por componente/projeto. Cada componente em geral oferece traduções para seu SDK, mais completo e voltado para desenvolvedores do projeto em si, e para o Runtime, caso mais comum de quem apenas utiliza o componente/projeto.
Vários projetos têm pacotes de download separados para cada grupo de idiomas; nestes casos, para suporte a Português do Brasil só é necessário obter o pacote NLpack1. Já os projetos EMF/EMFT/MDT disponibilizam um pacote ZIP contendo, dentro, os pacotes ZIP dos vários grupos de idiomas; nestes casos, baixe o pacote ZIP total, mas instale apenas o Pack1 contido nele.
Distribuições Eclipse independentes
Red Hat Developer Studio
Incorpora o ambiente Exadel Studio Pro e o conjunto de ferramentas JBoss Tools em um IDE completo baseado no Eclipse.
- Red hat Developer Studio (RHDS)
- JBoss Tools
- Home-page: JBoss Tools, projeto guarda-chuva de plugins Eclipse desenvolvidos pela JBoss para suporte a suas tecnologias, integrado como parte do RHDS; módulos: RichFaces VE, Seam Tools, Hibernate Tools, JBoss AS Tools, Drools IDE, JBPM Tools, JBossWS Tools.
- Download: JBoss.org at SourceForge - JBossTools
- Fornecedor: JBoss / Red Hat
- Exadel Studio Pro [old]
- JBoss IDE [old]
-
- Hibernate Tools [old]
-
EasyEclipse
Reúne e testa em práticas distribuições integradas, com instalador/desinstalador, projetos da Fundação Eclipse.org e plugins software livre desenvolvidos por terceiros.
- EasyEclipse
- Pacotes Java disponíveis, por perfil de uso
- Plugins de terceiros testados e empacotados pelo EasyEclipse
- Essenciais de edição
- AnyEdit Tools, por Andrei Loskutov - novas ações/menus úteis para os editores de texto do Eclipse: conversões tabulação/espaços, maiúsculas/minúsculas e entidades HTML, remover espaços no final das linhas.
- Eclipse Utils Plugins: EditorPosition, Refresh
- eSpell Eclipse corretor ortográfico em Java, JavaScript, JavaProperties, C, C++, XML, HTML, JSP, PHP; suporte a dicionários Aspell, verifica enquanto você digita.
- colorEditor edição com destaque de sintaxe em cores para ~140 tipos de arquivo, usa arquivos de definição de sintaxe highlight do JEdit.
- Multi-Clipboard
- QuickREx para construir, testar e avaliar expressões regulares, com suporte a Perl, Awk e Java regex.
- Desenvolvimento web - HTML, XML, CSS, JavaScript
- Frameworks web Java - JSF, Struts, Spring
- Amateras IDE: StrutsIDE & FacesIDE, gerencia visualmente arquivos de configuração de Apache Struts e de JavaServer Faces (JSF), respectivamente (ver Project Amateras).
- Spring IDE, interface gráfica para os arquivos de configuração do Framework Spring.
- Aston Wizards
- [old] Spindle for Tapestry 3.
- Suporte a servidores Java EE
- Qualidade de código e testes
- Diversos
IBM developerWorks
- Eclipse bundles by IBM Rational
-
- Pacotes Java disponíveis, por perfil de uso
- Java EE project bundle: focado no WTP;
- Testing project bundle: focado no TPTP;
- Modeling project bundle: focado no GMF;
- Enterprise project bundle: mais completo, inclui o maior universo de projetos compoentes; é a distribuição tudo-em-um recomendada para desenvolvimento corporativo ou profissional. Para Eclipse 3.3/Europa, inclui WTP 2.0, EMF 2.3, GEF 3.3, DTP 1.5, TPTP 4.4, GMF 2.0, EMF (Validation, Query, Transaction) 1.1, MDT (OCL) 1.1.
Lomboz
- Object Web Lomboz
-
- Componentes Eclipse utilizados
- Eclipse platform, EMF + SDO/XSD, GEF, WTP, DTP e AJDT.
- Ferramentas adicionais inclusas
- Eclipse BPEL Editor (só no Europa), Spring IDE Beans Editor, Hibernate Mapping Tools for eclipse.
Tiny Eclipse
- Tiny Eclipse
-
- Pacotes Java disponíveis, por perfil de uso
- Java EE Europa: inclui DLTK, DTP, WTP, PDT;
- Tiny WTP 1.5.3.
Plugins independentes de terceiros
Pacotes de plugins desenvolvidos por terceiros não necessariamente seguem a mesma estrutura de diretório base padronizada do Projeto Eclipse. Também a forma de instalação pode variar. Alguns fornecedores utilizam o mecanismo de atualização automática (Update) do Eclipse para a instalação do plugin, outros incluem um instalador (na forma de um JAR executável com um instalador em Java, por exemplo), mas muitos distribuem o plugin como um pacote ZIP que deve ser simplesmente descompactado. O ideal é seguir as orientações do fornecedor do plugin.
Como regra geral, para saber o local correto onde descompactar um pacote de plugin, o ideal é primeiro listar ou visualizar o conteúdo do pacote, com um programa descompactador ZIP de sua preferência, e observar como está organizada a estrutura de diretórios do conteúdo. As três opções mais comuns encontradas são:
- Se todo o conteúdo estiver organizado a partir de uma pasta
eclise\
, ou seja, existirem caminhos iniciados por eclipse\features\nome_do_plugin\
... ou eclipse\plugins\nome_do_plugin\
..., descompacte o pacote no mesmo caminho-base usado ao descompactar os pacotes do Projeto Eclipse: ECLIPSE_BASE\
. - Se o conteúdo não começar pela pasta
eclipse\
, mas sim diretamente com as pastas features\nome_do_plugin\
..., plugins\nome_do_plugin\
... etc., descompacte o pacote a partir da pasta eclipse\
dentro do caminho-base de instalação do Eclipse, ou seja, em ECLIPSE_BASE\eclipse\
. - Se, por fim, o caminho de diretórios dentro do pacote já começar com o próprio nome do plugin, assuma que os arquivos devam ser descompactados diretamente na pasta
ECLIPSE_BASE\eclipse\plugins\
.
- Plugins gratuitos para tecnologias e ferramentas comuns:
- Sugiro a lista de Plug-ins integrados no EasyEclipse e também estes:
- JavaScript
- Cobertura de testes - Coverclipse
- Apache Log4j & Commons Logging - Log4E Free (existe também a versão Pro comercial)
- Subversion (SVN) - Subversive (alternativa ao Subclipse).
- [old] Velocity - VeloEdit
Catálogos de Plug-ins
Ambientes para Outras Linguagens e Tecnologias
Distribuições comerciais
- MyEclipse Enterprise Worbench, produto comercial, licenciado por pagamento de assinatura anual, inclui um completo kit integrado de plug-ins, incluindo diversos componentes comerciais de qualidade profissional para UML, JEE, Swing etc.
- IBM Rational software, produtos comerciais baseados na plataforma Eclipse: IBM Rational Application/Web Developer (WebSphere Studio), IBM Rational Software Architect/Modeler, IBM Rational Systems Developer, IBM Rational Functional/Manual/Performance Tester, IBM Rational Method Composer.
- BEA Workshop Studio, inclui editores e ferramentas avançados para JSP, Struts, JSF e EJB3 - Hibernate ORM, as ferramentas DbXplorer e DbXaminer para bancos de dados relacionais, tecnologia AppXRay e ainda integra o Spring IDE Project.
- Yoxos, distribuição Eclipse incluindo diversos plug-ins livres mais populares para ele integrados, além do integrador Yoxos Install Manager (YIM). O Yoxos está disponível em licenciamentos gratuito e comercial (assinatura anual).
Referências
- Ferramentas de Software para Desenvolvimento em Java, coletânea de referências por Márcio d'Ávila, abrangendo Build & Run, IDE e ajuste de código-fonte.
- Eclipse Project Development: planos de release, processo de desenvolvimento, recursos sobre APIs e informações históricas do projeto Eclipse.
- A Nova Lua de Júpiter vai aumentar a sua produtividade (Callisto), 16/06/2006, e A Nova Lua de Júpiter vai aumentar a sua produtividade - Parte 2 (Europa), por Marco Aurélio Mendes.
- Eclipse Europa - Uma melhor “primeira impressão”, por Rodrigo Urubatan, 31/07/2007.
- Eclipse 3.3 por Osvaldo Doederlein, artigo por Márcio d'Ávila, citando trecho do artigo de Osvaldo Pinali Doederlein na revista Java Magazine sobre o Eclipse 3.3.
- Most Useful Top 50+ Eclipse Plug-ins (em inglês), por Bayarsaikhan, 2007-08-13.