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

Comando "Maven Update" muda configurações do projeto no Eclipse

Estou com a mesma dúvida do link abaixo:

http://pt.stackoverflow.com/questions/6391/maven-como-definir-a-vers%C3%A3o-do-jdk

Toda vez, no Eclipse, quando dou o comando "Maven Update", as configurações do Java (JRE instaladas, Compilador e Project Facets) são modificadas. Vai para a versão 1.5. De acordo com a resposta do link acima, adicionei no pom.xml o trecho de código:

<!-- CONFIGURAR VERSÃO DO JAVA PARA 1.7 -->
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

Resolveu. No entanto, ainda no comando "mvn clean package", dá erro e indica que estou usando uma JRE. Alguém sabe o que mais devo configurar?

Obrigado.

7 respostas

Essa configuração da versão é padrão, geralmente as pessoas usam para deixar claro a versão que o projeto deve ser configurado. agora eu não entendi o erro que dá... Qual é exatamente o erro? Você está com a pasta bin da jdk no seu path?

O erro é:

[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.466 s
[INFO] Finished at: 2016-10-26T18:55:44-02:00
[INFO] Final Memory: 8M/104M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project lojaweb: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

Isso acontece eu executando o comando "mvn compile" no terminal. Pelo Eclipse dá certo. Se eu executar, no Eclipse, "Maven Update" e depois ir no terminal e executar "mvn compile" dá tudo certo. Agora se eu, no terminal, executar "mvn clean compile" dá o erro acima.

Você precisa adicionar o caminho da pasta bin da jdk no seu path.. o que precisa funcionar é: javac -version

Se esse comando funcionar, ta tudo configurado certo.. Caso não funcione, vc precisa ajeitar essa parte.

Então está tudo certo.

alex@ubuntu-alex:~/Desenvolvimento/workspace_luna/lojaweb$ javac -version
javac 1.8.0_102
alex@ubuntu-alex:~/Desenvolvimento/workspace_luna/lojaweb$

Realmente, não sei o que pode ser. No Eclipse tudo funciona, agora no terminal, após dar um "mvn clean" e "mvn compile", dá o erro do post acima.

Dando uma olhada aqui, vi uma sugestão de adicionar o caminho da JDK no path também, acho que vc poderia tentar. Eu uso um mac, e no meu path tem o caminho da jdk adicionada.

solução!

Oi, Alex.

Esse stack que você colou aqui é de dentro do Eclipse, certo? Veja se o seu Eclipse está usando a JRE para executar ou a JDK.

Uma forma de garatir isso é você alterar o arquivo eclipse.ini e fazer ele usar o JDK.

Vá até a pasta do seu eclipse e encontre esse arquivo. Edite ele e insira a linha abaixo na primeira linha do arquivo:

-vm
/usr/java/jdk1.8.0_77/bin/java

Mude o caminho para onde está o seu JDK no seu Ubuntu. Isso irá garantir que o seu eclipse esteja rodando em cima da JDK e não da JRE.

Outra configuração que você pode fazer é ir no menu Window > Preferences do Eclipse e digite no campo de busca: Installed JRE. Deve aparecer somente essa opção na árvore de menu à esquerda. Clique na opção e veja se é uma JDK ou se é uma JRE referenciada na lista.

Se for uma JRE, remova e adicione uma JDK.

Isso deve resolver seu problema com o plugin do Maven no Eclipse.

Arthur, a sua dica "Mude o caminho para onde está o seu JDK no seu Ubuntu. Isso irá garantir que o seu eclipse esteja rodando em cima da JDK e não da JRE" foi certeira!

A minha variável $JAVA_HOME estava apontando para a JRE e não para a JDK. Olhem ai:

alex@ubuntu-alex:~$ echo $JAVA_HOME
/usr/java/jre1.8.0_101
alex@ubuntu-alex:~$ export JAVA_HOME=/usr/java/jdk1.8.0_102/
alex@ubuntu-alex:~$ echo $JAVA_HOME
/usr/java/jdk1.8.0_102/

Depois dessa mudança, o projeto compilou certinho, tanto no Eclipse quanto no terminal.

Arthur Franco e Alberto Souza, obrigado pelas dicas!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software