2017-09-09 41 views
0

我需要在gradle項目中生成pom。如何在gradle/groovy腳本中通過xml模板生成groovy.lang.Closure

正是這樣

apply plugin: 'maven' 

install { 
    repositories.mavenInstaller { 
    pom.withXml(pomConfig(project.version)) 
... 

功能pomConfig(project.version)應該從磁盤加載一個POM模板則替換${project.version}並返回一個groovy.lang.Closure實例。

函數pom.withXml不接受由def xml = new XmlParser().parse("pom-template.xml")創建的groovy util節點。

我不知道如何通過xml創建一個groovy.lang.Closure實例。

+0

[MavenPom.html#withXml(groovy.lang.Closure)](https://docs.gradle.org/current/javadoc/org/gradle/api/artifacts/maven/ MavenPom.html#withXml(groovy.lang.Closure)):添加一個在創建POM XML時調用的閉包。你會在這個閉包中獲得對創建的pom的引用,你可以修改它。檢查此:https://github.com/gradle/gradle/blob/master/subprojects/docs/src/samples/maven-publish/pomCustomization/build.gradle – daggett

回答