1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Integração Jenkins Maven

Bom dia pessoal,

Eu estou tentando criar um job no jenkins, utilizando o maven. O meu problema é que o maven no jenkins não está localizando o jdk. Já conferi e verifiquei que a variável JAVA_HOME está correta (apontando para o jdk) e o maven (fora do jenkins) está funcionando normalmente. O erro que dá é este:

[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] Unable to locate the Javac Compiler in:
  C:\Program Files\Java\jre7\..\lib\tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.
[INFO] 1 error
[INFO] -------------------------------------------------------------
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger logResult
INFO: ------------------------------------------------------------------------
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger logResult
INFO: BUILD FAILURE
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger logStats
INFO: ------------------------------------------------------------------------
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger logStats
INFO: Total time: 2.426s
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger logStats
INFO: Finished at: Mon Sep 16 11:50:26 BRT 2013
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger logStats
INFO: Final Memory: 9M/152M
Set 16, 2013 11:50:26 AM org.apache.maven.cli.event.ExecutionEventLogger sessionEnded
INFO: ------------------------------------------------------------------------
[JENKINS] Archiving C:\.jenkins\jobs\Gerador de Código\workspace\pom.xml to C:\.jenkins\jobs\Gerador de Código\modules\com.jubernate.gerador_codigo$Gerador_Codigo\builds\2013-09-16_11-50-21\archive\com.jubernate.gerador_codigo\Gerador_Codigo\0.0.1-SNAPSHOT\Gerador_Codigo-0.0.1-SNAPSHOT.pom
Aguardando Jenkins terminar de coletar dados
Sending e-mails to: jubaomaximo@hotmail.com

ERROR: Could not connect to SMTP host: localhost, port: 25, response: 421
javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25, response: 421
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1922)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    at javax.mail.Service.connect(Service.java:295)
    at javax.mail.Service.connect(Service.java:176)
    at javax.mail.Service.connect(Service.java:125)
    at javax.mail.Transport.send0(Transport.java:194)
    at javax.mail.Transport.send(Transport.java:124)
    at hudson.tasks.MailSender.execute(MailSender.java:116)
    at hudson.maven.reporters.MavenMailer.end(MavenMailer.java:55)
    at hudson.maven.AbstractMavenBuilder.end(AbstractMavenBuilder.java:103)
    at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:816)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:567)
    at hudson.model.Run.execute(Run.java:1603)
    at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:506)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:246)
channel stopped
Skipping sonar analysis due to bad build status FAILURE
Falhou ao enviar e-mail para juba porque não há nenhum endereço de e-mail conhecido, e nenhum domínio de e-mail padrão está configurado
Sending e-mails to: jubaomaximo@hotmail.com

ERROR: Could not connect to SMTP host: localhost, port: 25, response: 421
javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25, response: 421
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1922)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
    at javax.mail.Service.connect(Service.java:295)
    at javax.mail.Service.connect(Service.java:176)
    at javax.mail.Service.connect(Service.java:125)
    at javax.mail.Transport.send0(Transport.java:194)
    at javax.mail.Transport.send(Transport.java:124)
    at hudson.tasks.MailSender.execute(MailSender.java:116)
    at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.cleanUp(MavenModuleSetBuild.java:1025)
    at hudson.model.Run.execute(Run.java:1648)
    at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:506)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:246)
Finished: FAILURE

Agradeço qualquer ajuda. Inté.

  • Consegui uma pista do erro, na janela de propriedades do sistema tem uma propriedade "java.home" (assim mesmo em letra minuscula) apontando para o endereço do jre. Alguém sabe como eu altero esta propriedade (eu estou utilizando um arquivo .war, rodando no tomcat)

    Jubarius   16 de set de 2013
  • Olá pessoal, em especial a ana que tentou me dar uma ajudinha,

    O problema do Jenkins é que a variável java.home que ele utiliza por padrão é do servidor em que ele está hospedado(no meu caso, tomcat), e como este servidor usa só o jre, o jenkins apontava somente para o jre. A solução foi criar uma variável global com o nome "java.home" apontando para o jdk\jre em (http://localhost:8080/jenkins/configure). Depois disto o sistema começou a funcionar blz

    Inté...

    Jubarius   16 de set de 2013
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

3 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags jenkins maven ou faça a sua própria pergunta.