我在Groovy 2.1中遇到以下错误
script1409163855794789083714.groovy: 53: unexpected token: @ line
这里有两个问题 1 - 它通常不会说出引起问题的令牌是什么吗?什么是空白的意思? 2 - 因为它没有说脚本名称,它给了我脚本,这是否意味着这个问题出现在我的脚本正在调用的类中,而不是主要的?
奇怪的是,当我使用Groovy 2.0 *运行它时,我没有收到错误。因此,其他任何人都可能难以复制。我很想问一下错误信息的含义,而不是试图让别人为我解决问题:)
编辑 - 错误根本不在第53行,我已将其缩小到此行。蒂姆耶茨可能会在下面的评论中提到一些事情,但重新输入它并没有帮助。
config = new ConfigSlurper()。parse(new file(“D:/schedule/cm/dev/riv11a/ssi/RIV-ssi.groovy”)。text)
编辑 - 此行解析一个configSlurper文件,该文件的行看起来像var =
这就是错误。谢谢!!我真的希望groovy能告诉你你的错误是哪个文件。
答案 0 :(得分:0)
这是一段对我有用的代码:
def flags = releaseConf.releaseMailFlags.value
def attachments = [
(flags.contains('qrCode') && releaseConf.QRCodeFile?.location?.exists() ? releaseConf.QRCodeFile.location : null),
(flags.contains('imageMontage') && releaseConf. `?.location?.exists() ? releaseConf.imageMontageFile.location : null)
]
attachments.removeAll([null])
ant.mail(
mailhost: releaseConf.mailServer,
mailport: releaseConf.mailPort,
subject: releaseConf.releaseMailSubject,
charset: 'UTF-8',
tolist: releaseConf.releaseMailTo.value.join(','),
from: releaseConf.releaseMailFrom.value,
message: releaseConf.mailMessageFile?.location?.text,
messageMimeType: 'text/html',
files: attachments.join(',')
)
QRCodeFile
和imageMontageFile
位置字段是java.io.File
类的实例。因此,在,
键下设置files
分隔的绝对路径集合。