Java (Maven) – Erros Inesperados

Olá pessoal, boa noite.

Hoje vou deixar uma resolução básica para um daqueles erros que acontecem no Maven quando você está construindo suas dependências no Netbeans.

fonte: https://mastigado.wordpress.com

Se ao mandar executar o seu programa Java pelo Netbeans surgem algumas mensagens do tipo:

Getting 'java.lang.UnsatisfiedLinkError': no lwjgl in java.library.path

Ou

Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:exec

Sugiro a você conferir as configurações de seu projeto, pois no meu caso os arquivos da library de outro projeto que estava tentando copiar se localizava numa pasta chama native dentro do diretório raiz de meu projeto. Para fazer isso clique com o botão direito em cima do seu projeto Netbeans e siga em Propriedades. Após a janela que se abrirá vá até Construir > Executar e adicione a informação de onde está a sua classe principal. Em Opções de VM adicione a seguinte linha:

-Djava.library.path=.\native\

Confira com a imagem abaixo e mande executar novamente.

config_path_maven

fonte: https://mastigado.wordpress.com

Instalando e Configurando o Maven no Eclipse para trabalhar com TDD utilizando Junit (para leigos)

Hello!

Hoje tenho que deixar uma configuração básica do Maven e Junit para rodarmos os nossos testes de TDD  (Test Driven Development). Bem, eu aproveitei e escrevi “para leigos” no final da chamada porque como muitos, me considero um leigo, sendo assim ser leigo é apenas um estado de espírito e isso diz tudo sobre o que sinto agora.

Percorri vários tutoriais na net e muitas vezes em que fui implementar os projetos do Maven com JUnit estava dando vários erros, então resolvi fazer um tutorial bem mastigado.

– Baixe o Maven no site do Maven.

Entre no link e baixe http://maven.apache.org a última versão do Maven.

conf01_apacha_maven

Eu decidi baixar a versão zip, portanto faça o mesmo.

– Descompactando o conteúdo do pacote

Descompacte o conteúdo do pacote para dentro de c:\ (no meu caso o Apache Maven está na versão 3.3.3, portanto saiba que esta versão pode variar). No meu caso ficou assim: c:\apache-maven-3.3.3.

– Configurando o Maven

No decorrer deste tutorial você deverá ver que baseei no passo a passo do Luiz Ricardo do site State of Art, mas fiz algumas modificações para ir somente ao que interessa para nós.

Crie um diretório chamado repositorio dentro da pasta c:\apache-maven-3.3.3.  E também pasta do Maven, existe um diretório chamado conf, pois bem, entre dentro dele, abra o arquivo settings.xml e descomente a linha onde está escrito <LocalRepository> e dentro dele coloque algo como está abaixo (lembrando que eu não sei qual será a versão do Maven que você está usando e por isso coloque do jeito que está escrito na sua pasta).


<localRepository>c:\apache-maven-3.3.3\repositorio</localRepository>

Segundo o site da referência, se é apenas um usuário que acessa determinada máquina não há problema em direcionar o repositório para um local em específico.

– Configurando as variáveis de ambiente

Pois bem, eu já escrevi um tutorial ensinando à todos como criar variáveis de ambiente no Linux e no Windows, portanto utilize o método do Windows contido neste tutorial, só que primeiro você deve criar uma usando o botão Novo (em Painel de Controle > Sistema > Configurações Avançadas do Sistema > Variáveis de Ambiente > Variáveis de Sistema > Novo)  e criar uma variável com o seguinte nome e conteúdo:

Onde está escrito Nome da Variável, M2_HOME e onde pede o Valor da Variável digite c:\apache-maven-3.3.3 que é o caminho de seu Apache Maven.

E agora sim, você pode seguir o tutorial de como configurar o Path da sua máquina a que me refiro logo acima, acrescentando o valor ;%M2_HOME%\bin ao final do Path do Windows.

Conferindo

Depois de ter feito o procedimento, abra o console do Windows (se for o terminal do Linux é bom reiniciar antes ou digitar /etc/source/profile de executar o comando) e digite mvn -version e verifique se está parecido como algo abaixo:

conf02_prompt

Na imagem acima dá pra ver mais ou menos o que vai aparecer para você.

– Configurando o Maven no Eclipse

Ao invés de ir até o Eclipse Marketplace, iremos em Help > Install New Software e coloco o endereço do repositório do Maven (http://download.eclipse.org/technology/m2e/releases):

conf03_repositoriomaven

E mando baixar. Se ele pedir para reiniciar, reinicie sempre.

– Configurando a instalação do Maven

Siga em Window > Preferences > Maven > Installations e na caixa onde está informada a versão do Maven já configurada no Eclipse, desmarque-a e clique em Add para adicionar o diretório que está instalado o nosso Maven.

conf04_repositoriomaven

Agora, em User Settings, altere o campo User Settings para o arquivo settings.xml que configuramos anteriormente.

conf05_usersettins

– Criando o nosso projeto Maven

Bem, para criar um projeto teste eu vou pegar o projeto da calculadora que meu professor fez (este código não é meu). Vamos lá, File > New > Other > Maven > Maven Project.

conf06_newproject

Marque para criarmos um projeto simples (Create a simple project).

conf07_newproject2

Agora, no quadro abaixo vou marcar da seguinte maneira:

  • Group Id: com.wordpress.mastigado
  • Artificat Id: calculadora
  • Name: Calculadora
  • Description: Calculadora teste para Maven

 

conf08_newproject3

Depois de criado o projeto, abra o arquivo pom.xml e adicione as linhas abaixo logo abaixo da tag description e salve o arquivo.


<dependencies>
       <dependency>
            <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                    <version>4.8.2</version>
            <scope>test</scope>
      </dependency>
 </dependencies>

 

conf09_pomxml

– Crie um pacote com o nome com.wordpress.mastigado.calculadora dentro de de src/main/java.

conf10_criacaopacote

E depois um chamado com.wordpress.mastigado.calculadora.test dentro de src/test/java.

conf11_criacaopacotetest

– Crie uma interface chamada Calculadora dentro de src/main/java.

conf12_criacaointerfaceEm seguida, coloque o código abaixo dentro da interface


package com.wordpress.mastigado.calculadora;

public interface Calculadora {
   public int soma (int primeiro, int segundo);
   public int subtracao (int primeiro, int segundo);
   public int multiplicacao (int valor, int vezes);
   public int divisao (int numerador, int divisor) throws ArithmeticException;
}

10º – Agora crie uma classe chamada AplCalculadora também dentro de src/main/java.


package com.wordpress.mastigado.calculadora;

public class AplCalculadora implements Calculadora {

  public int soma(int primeiro, int segundo) {
     return primeiro + segundo;
  }

  public int subtracao(int primeiro, int segundo) {
     return primeiro - segundo;
  }

  public int multiplicacao(int valor, int vezes) {
     return valor * vezes;
  }

  public int divisao(int numerador, int divisor) throws ArithmeticException { 

   if (divisor == 0) {
      throw new ArithmeticException("Divisão por zero");
   }

   return numerador / divisor;
 }
}

11º – Crie a classe CalculadoraTest.java dentro de src/test/java e coloque o conteúdo abaixo dentro dela.

package com.wordpress.mastigado.calculadora.test;

import com.wordpress.mastigado.calculadora.AplCalculadora;
import com.wordpress.mastigado.calculadora.Calculadora;

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

public class CalculadoraTest {

private Calculadora calculadora;

 private final int VALOR1 = 10;
 private final int VALOR2 = 20;

 private final int VEZES = 10;

 private final int RESULTADOSOMA = 30;
 private final int RESULTADOMULT = 100;
 private final int RESULTADODIV = 2;

 private final int ZERO = 0;

 @Before
 public void before()
 {
    calculadora = new AplCalculadora();
 }

 @Test
 public void soma()
 {
    int resultado = calculadora.soma(VALOR1, VALOR2);
    //Verificando se o objeto não é nulo
    Assert.assertNotNull(resultado);
    //Verificando se a soma esta correta
    Assert.assertEquals(RESULTADOSOMA, resultado);
    //Verificando se o resultado é maior que 0
    Assert.assertFalse(resultado < 0);
 }

 @Test
 public void subtracao()
 {
    int resultado = calculadora.subtracao(VALOR2, VALOR1);
    //Verificando se o objeto não é nulo
    Assert.assertNotNull(resultado);
    //Verificando se a soma está correta
    Assert.assertEquals(VALOR1, resultado);
    //Verificando se o resultado é maior que 0
    Assert.assertFalse(resultado < 0);
 }

 @Test
 public void multiplicacao()
 {
    int resultado = calculadora.multiplicacao(VALOR1, VEZES);
    //Verificando se o objeto não é nulo
    Assert.assertNotNull(resultado);
    //Verificando se a soma está correta
    Assert.assertEquals(RESULTADOMULT, resultado);
    //Verificando se o resultado é maior que 0
    Assert.assertFalse(resultado < 0);
 }

 @Test
 public void multiplicacaoporzero()
 {
    int resultado = calculadora.multiplicacao(VALOR1, ZERO);
    //Verificando se o objeto não é nulo
    Assert.assertNotNull(resultado);
    //Verificando se a soma está correta
    Assert.assertEquals(ZERO, resultado);
    //Verificando se o resultado é maior que 0
    Assert.assertTrue(resultado == 0);
 }

 @Test
 public void divisao()
 {
    int resultado = calculadora.divisao(VALOR2, VALOR1);
    //Verificando se o objeto não é nulo
    Assert.assertNotNull(resultado);
    //Verificando se a soma está correta
    Assert.assertEquals(RESULTADODIV, resultado);
    //Verificando se o resultado é maior que 0
    Assert.assertFalse(resultado < 0);
 }

 @Test (expected = ArithmeticException.class)
 public void divisaoporzero()
 {
    calculadora.divisao(VALOR1, ZERO);
 } 

}

12º – Configurando o comando para seu JDK chamar o Maven.

Vá em Window > Preferences > Java > Installed JREs e clique em Add para adicionar a JDK do Java que irá compilar o seu projeto e em seguida, desmarque a JRE abaixo.
conf15_confmaven
Pois é, um dos erros que me perseguiu foi um parâmetro que eu não havia colocado e que está no screenshot acima. Ao marcar a JDK clique em Edit para adicionar a linha abaixo no campo Default VM arguments.

-Dmaven.multiModuleProjectDirectory=$M2_HOME

13º – E para finalizar, clique com botão direito em cima do seu projeto e em seguida Run As > JUnit Test.

conf16_junit

fonte: https://mastigado.wordpress.com

Sobre o plugin M2 para Eclipse

fonte: http://eclipse.org/m2e/index.html

Para maiores detalhes sobre o porque de seu utilizar o Maven consulte o blog abaixo.

fonte: http://luizricardo.org/2014/06/instalando-configurando-e-usando-o-maven-para-gerenciar-suas-dependencias-e-seus-projetos-java/

%d blogueiros gostam disto: