Java 将MarkupBuilder与Groovy一起使用。。。创建XML参数时出现问题

Java 将MarkupBuilder与Groovy一起使用。。。创建XML参数时出现问题,java,xml,groovy,Java,Xml,Groovy,我有以下Groovy代码,但它不起作用: xml = new groovy.xml.MarkupBuilder() xmldata = xml.Plugins(nextid: '10') { Target(name: 'default.auth') { Port(protocol: 'https') { 8080 } } } println xmldata 我希望它能导致: <Plugins nextid='10'> <Ta

我有以下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>

8080
我实际上得到的是:

<Plugins nextid='10'>
  <Target name='default.auth'>
    <Port protocol='https' />
  </Target>
</Plugins>


有人能对此提供一些见解吗?

您需要使用
mkp.yield
8080
值输出到xml,如下所示:

xml = new groovy.xml.MarkupBuilder() 
xmldata = xml.Plugins(nextid: '10') {
   Target(name: 'default.auth') {
     Port(protocol: 'https') {
       mkp.yield 8080
     }
   }
}