【发布时间】:2015-02-16 15:44:02
【问题描述】:
我正在使用 Jenkins,我想在完成工作后发送一封电子邮件。我遇到的问题是我想将之前定义的用户名用于配置中的参数。我尝试使用 ${username} 但我不工作。这是我得到的错误:
Sending e-mails to: ${username}@email.es
ERROR: Invalid Addresses
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
com.sun.mail.smtp.SMTPAddressFailedException: 550 5.1.1 <${username}@email.es>... User unknown
at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1835)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1098)
at javax.mail.Transport.send0(Transport.java:195)
at javax.mail.Transport.send(Transport.java:124)
at hudson.tasks.MailSender.run(MailSender.java:126)
at hudson.tasks.MailSender.execute(MailSender.java:101)
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.cleanUp(MavenModuleSetBuild.java:1064)
at hudson.model.Run.execute(Run.java:1764)
at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531)
at hudson.model.ResourceController.execute(ResourceController.java:89)
at hudson.model.Executor.run(Executor.java:240)
Caused by: com.sun.mail.smtp.SMTPAddressFailedException: 550 5.1.1 <${username}@email.es>... User unknown
at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1686)
... 10 more
它没有取参数的值。有没有任何插件或方法可以做到这一点?
感谢您的帮助。
【问题讨论】:
-
您的参数是否在配置部分“此构建已参数化”下定义?它是什么类型的?
-
我把它用西班牙语写成 'cadena'。我认为是字符串参数。是的,它正在检查“此构建已参数化”。我有另一个字符串参数来使用 SVN url,它工作正常。问题出在项目属性中的电子邮件 --> 电子邮件通知。
-
奇怪,我试过了,它对我有用。你的 Jenkins 是什么版本的?
-
我的版本是 Jenkins 版本。 1.599。该参数来自另一个使用 groovy 脚本的任务调用。我有两个参数,一个是我用来编译里面代码的SVN参数,一个是我用来发邮件的username参数,但是控制台给我报错。
-
好的,我尝试在第一份工作中这样做,它可以工作,但是当我将工作参数传播到下一个要运行的工作时,它就不起作用了。