我正在尝试使用" $ {BUILD_LOG,maxLines,escapeHtml}"喜欢描述: How can I take last 20 lines from the $BUILD_LOG variable?
不幸的是,它对我不起作用。
我收到此错误:
Script1.groovy:114:期待除了' \ n'&#39 ;;无论如何得到它@第114行,第301栏。 由用户MYUSERNAME提供
我在此行中的代码是:
msg.setText("This build (" + build.getFullDisplayName()
+ " ) contains the following tasks:\n\nTASK\t\t\t IMPLEMENTER:\n"
+ taskList + "\n\n\nLink to this
build: ${BUILD_URL} \n ${BUILD_LOG, maxLines=9999, escapeHtml=false}" );
如果我把它拿出来,它就可以了。这就是为什么我的猜测是," BUILD_LOG "不再工作了吗?
$ {BUILD_LOG,maxLines = 9999,escapeHtml = false}
编辑:
也许作为补充:我试图用PreSend groovy脚本来做这件事。
因为我正在动态构建电子邮件文本。
${BUILD_URL}
工作正常,${BUILD_LOG, maxLines=9999, escapeHtml=false}
没有(对我来说)我正在为此寻找解决方案......
msg
对象是java MimeMessage。
谢谢, 丹尼尔
答案 0 :(得分:1)
该错误消息通常与未关闭的引号相关,评论以/
而不是//
开头,等等。在您的代码中,我唯一能看到的是您的第三行未正确完成,即在"\n\n\nLink to this
之后你没有关闭双引号,而是开始一个新行(从而expecting anything but ''\n''
。
尝试写整行:
msg.setText("This build (" + build.getFullDisplayName()
+ " ) contains the following tasks:\n\nTASK\t\t\t IMPLEMENTER:\n"
+ taskList + "\n\n\nLink to this build: ${BUILD_URL} \n ${BUILD_LOG, maxLines=9999, escapeHtml=false}" );
或关闭引号:
msg.setText("This build (" + build.getFullDisplayName()
+ " ) contains the following tasks:\n\nTASK\t\t\t IMPLEMENTER:\n"
+ taskList + "\n\n\nLink to this "
+ "build: ${BUILD_URL} \n ${BUILD_LOG, maxLines=9999, escapeHtml=false}" );
答案 1 :(得分:0)
我使用了以下内容,它对我来说很好。
LD.E.128
我尝试使用Jenkins版本1.617
答案 2 :(得分:0)
您是否尝试过设置escapeHtml=true
?可能会发生此标记按原样扩展,然后" "
中的字符串变为无效。
答案 3 :(得分:0)
在最新版本的变量$ {BUILD_LOG}中我无法使用 - 只有我可以设置登录电子邮件内容的解决方案:
msg.setText(build.getLog())
作为Jenkins全局配置中的默认预发送脚本...