Configuração de Ambiente

As ferramentas necessárias para trabalhar com o Jmine

Sistema Operacional

Todos os desenvolvedores são livres para escolher seu sistema operacional, mas a grande maioria opta pelo Linux (apesar de alguns poucos optarem por Windows ou MacOS). É fortemente aconselhável optar pelo Linux, já que assim você terá um ambiente muito parecido com os demais desenvolvedores, obtendo ajuda para resolver qualquer tipo de problema muito mais rapidamente.

Java

O JMine é desenvolvido em Java, sendo compatível com as versões 5 a 8 (em 2015-01-27) da JDK da Oracle (a princípio a compatibilidade não é garantida entre outras implementações da JVM).

Aplicações utilizando o Jmine são dessa forma livres para utilizar qualquer versão do java entre 1.5 e Java 8, porém para assegurar a compatibilidade do framework, sugere-se que builds e testes do JMine sejam realizados utilizando a JDK da Oracle para o Java 1.5, que pode ser obtida a partir do site da Oracle.

Maven

Maven é a ferramenta utilizada para o build do Jmine e, usualmente, das aplicações que o utilizam, devido à existência de um archetype <../archetype/index> que permite o bootstraping mais rápido de um projeto simples.

Esta ferramenta em suma provê gerenciamento de dependências, download e deploy de artefatos, permite o build, execução e teste da aplicação, entre outras possibilidades. Mais informações sobre esta ferramenta podem ser encontradas na sua seção específica em Maven <./maven>.

Mercurial

O Mercurial é o sistema de controle de versão distribuído utilizado para os Jmine. Seu modo de funcionamento e mesmo a interface de linha de comando fornecida pela ferramenta são muito similares a dos demais DVCS existentes, como o Git por exemplo. Um de seus diferenciais está na facilidade de uso e extensão por meio de scripts em Python, devido à própria ferramenta ser escrita nesta linguagem.

A configuração da ferramenta pelo desenvolvedor pode ser realizada por meio de um arquivo de configuração normalmente localizado em $HOME/.hgrc. Em especial, diversos plugins podem ser habilitados a fim de facilitar o fluxo de trabalho utilizando o Hg:

  • color
  • extdiff (utilizar ferramentas externas para diffs)
  • histedit
  • mq
  • purge

entre outros. Ainda, pode-se utilizar ferramentas como o TortoiseHg que fornecem uma interface gráfica para interagir com um projeto versionado com o Mercurial.

IDEs

Eclipse

A IDE mais utilizada para projetos Java provavelmente é o Eclipse. Os desenvolvedores devem seguir um padrão de formatação definido pela padronização de código, cujo modelo pode ser importado diretamente na IDE para aplicação automática durante o desenvolvimento. Existem vários plugins que podem auxiliar o desenvolvedor na melhoria da qualidade do código:

  • Checkstyle
  • PMD
  • FindBugs
  • Emma (cobertura de testes)

IntelliJ

Apesar do grande uso do Eclipse, alguns desenvolvedores optam pelo IntelliJ IDEA principalmente por ser uma IDE considerada mais leve em questão de uso de recursos. Existe uma versão da comunidade e uma versão paga, com alguns recursos a mais, ambas podendo ser obitdas em http://www.jetbrains.com/idea/. Além de plugins equivalentes aos citados para eclipse, outros podem ser utilizados para aproveitar configurações como as de padronização de código listadas na seção anterior, que têm formato específico para cada IDE.

Configurando seu ambiente

Neste tutorial, vamos ensinar como configurar seu ambiente de trabalho para poder utilizar o que o Jmine te oferece.

Requisitos

Antes de mais nada, você precisa ter instalado:

  • Java - versão 1.5 ou maior
  • Maven - versão 3.0.3 ou maior

Caso não possua, deverá seguir tutoriais específicos para sua arquitetura disponíveis nos sites dos próprios criadores.

Preparando o Maven

Digite o seguinte comando no terminal para garantir que a versão que você está usando é igual ou superior à necessária:

mvn -version

Veja abaixo um output de exemplo, onde é possível verificar que a versão do maven instalado é a 3.0.3.

Apache Maven **3.0.3** (r1075438; 2011-02-28 14:31:09-0300)
Maven home: /opt/apache-maven-3.0.3
Java version: 1.5.0_22, vendor: Sun Microsystems Inc.
Java home: /opt/jdk1.5.0_22/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.35-32-generic-pae", arch: "i386", family: "unix"

O Jmine possui um repositório próprio para seus artefatos e plugins, é necessário informar ao maven onde encontrá-los. Para isto edite o arquivo settings.xml dentro da pasta do seu maven (que pode ser ~/.m2 ou ~/.m3), no seu perfil atual adicione os repositórios:

<repository>
        <id>jmine</id>
        <name>Jmine</name>
        <url>http://www.jmine.com.br/repo/</url>
</repository>
<repository>
        <id>jboss</id>
        <name>Jboss</name>
        <url>https://repository.jboss.org/nexus/content/groups/public-jboss</url>
</repository>

e

<pluginRepository>
        <id>jmine-plugins</id>
        <name>Jmine Plugins</name>
        <url>http://www.jmine.com.br/repo/</url>
</pluginRepository>

Pronto, agora você já tem seu ambiente configurado e já pode utilizar o nosso Archetype para dar seus primeiros passos.