我有以下Groovy代码,但它无法运行:
xml = new groovy.xml.MarkupBuilder()
xmldata = xml.Plugins(nextid: '10') {
Target(name: 'default.auth') {
Port(protocol: 'https') {
8080
}
}
}
println xmldata
我希望它导致:
<Plugins nextid='10'>
<Target name='default.auth'>
<Port protocol='https'>8080</Port>
</Target>
</Plugins>
我实际得到的是:
<Plugins nextid='10'>
<Target name='default.auth'>
<Port protocol='https' />
</Target>
</Plugins>
任何人都可以对此提供一些见解吗?
答案 0 :(得分:1)
您需要使用mkp.yield
将8080
值输出到xml,如下所示:
xml = new groovy.xml.MarkupBuilder()
xmldata = xml.Plugins(nextid: '10') {
Target(name: 'default.auth') {
Port(protocol: 'https') {
mkp.yield 8080
}
}
}