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

Mudando a versão do Java 1.5 (ou outras versões) para o 11

Como podem ver, a única versão da JDK que eu tenho instalada na minha máquina é a 11:

C:\>java -version
java version "11.0.7" 2020-04-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.7+8-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.7+8-LTS, mixed mode)

Quando criei o projeto pelo terminal usando o comando da Aula 01 mvn archetype:generate -DartifactId="produtos" -DgroupId="br.com.alura.maven" -DinteractiveMode="false" -DarchetypeArtifactId="maven-archetype-quickstart" e depois importei no Eclipse, ele veio automaticamente com o Java 11

Imgur

Mas, quando eu crio com o assistente do Eclipse, ele vem com o Java antigo (muito antigo) 1.5; Por que isso acontece?

Detalhe: No projeto "produtos", eu lembro que tive algum problema parecido na hora de buildar então eu adicionei a seguinte configuração no POM.xml e funcionou perfeitamente. Entretanto, esse mesmo comando dá problema no projeto Maven que eu criei diretamente com o Eclipse.

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <release>11</release>
                </configuration>
            </plugin>
        </plugins>
    </build>

Olha, se o fato do projeto ficar no 1.5 não importar e tudo funcionar sem problemas eu não me incomodo. Mas isso é estranho. E outra, acho que não faz muito sentido utilizar uma versão muito antiga do Java.

2 respostas

O maven-compiler-plugin por padrão irá compilar seu projeto usando Java 1.5. É por isso que você deve declarar explicitamente o maven-compiler-plugin em seu projeto com algo diferente de 1.5.

solução!

Oi Otávio, obrigado pela resposta. No final das contas, o que eu fiz foi o seguinte (com ajuda do stackoverflow):

Comentei as properties do Maven Compiler

<!--     <properties> -->
<!--         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> -->
<!--         <maven.compiler.source>1.7</maven.compiler.source> -->
<!--         <maven.compiler.target>1.7</maven.compiler.target> -->
<!--     </properties> -->

E lá em baixo, nos plugins, deixei da seguinte forma:

<plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <source>11</source>
        <target>11</target>
    </configuration>
</plugin>

Salvei, atualizei o projeto e dependências do Maven e funcionou tudo tranquilo.

Aliás, obrigado também pela resposta "Project Facets" que você postou aqui uns meses atrás. Eu baixei a versão 4.0.1 e dava o mesmo erro (antes de ver o como resolvia o problema).