Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Não consigo importar os pacotes relacionados a equalTo() e @Test. Alguém sabe o que pode estar havendo de errado?

Tentei usando as IDEs "Eclipse Java Oxygen" e "Eclipse IDE for Java Developers - 2020-03". Instalei Java JDK 13 e atualizei a variável de sistema com o diretório "C:\Program Files\Java\jdk-13.0.2\bin".

public class ContaTeste {

    @Test // Reporta erro aqui e não da opção de importação de pacote
    public void aoSacarUmValorDeUmaContaOSaldoDeveSofrerUmaSubtracaoDesseValor() {
        Conta conta = new Conta(200d);
        conta.sacar(50d);

        assertThat(conta.getSaldo(), is(equalTo(150d))); // Reporta erro aqui no equalTo() e não da opção de importação de pacote
    }
}
5 respostas

Estou usando a Eclipse IDE for Java Developers Version: 2020-03 (4.15.0). E JRE jre1.8.0_241.

Agora consegui importar, mas esta dando o seguinte erro quando eu rodo como teste:

java.lang.UnsupportedClassVersionError: ContaTeste has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:780) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:503) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:526) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:770) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:464) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:210)

Alguém sabe o que pode estar dando de errado?

Olá, Dênis!

Esse erro ocorre porque você compilou o seu código usando a JDK na versão 9 e a versão atual da sua JRE está na 8. Dá uma conferida se tua JRE tá na mesma versão da JDK.

52 = Java 8
53 = Java 9
54 = Java 10
55 = Java 11
56 = Java 12
57 = Java 13

Olá, Manoel,

Obrigado pela ajuda. Como eu faço para verificar as versões de JDK e JRE rodadas no Eclipse?

A JRE eu notei que aparece na pasta do projeto quando eu crio. E o projeto só me permite compilar se eu usar a versão jre1.8.0_241 (a única versão de JRE disponível para eu escolher).

Neste curso vocês informam que precisa usar JDK com versão 9 ou superior. Qual versão do JRE é compatível para com o JDK 9 (considerando que estou rodando rodando esta versão)?

Eu instalei o JDK 13 e agora nem me aparece mais a opção de fazer os importes na anotação "@Test" e no método "equalTo()".

Existe alguma versão da JRE mais atual que a jre1.8.0_241? No site da oracle eu só encontro esta versão para baixar: https://www.java.com/pt_BR/download/

solução!

Manoel,

Conseguir rodar o test criando a classe como JUnit Test Case (clickei em "new>JUnit Test Case" ao invés de "new > Class").

Obrigado pela força.