Maven 如何将gradle中的groovy任务转换为gradle Kotlin DSL以生成pom.xml?
以下gradle脚本的build.gradle.kts版本是什么Maven 如何将gradle中的groovy任务转换为gradle Kotlin DSL以生成pom.xml?,maven,gradle,kotlin,pom.xml,gradle-kotlin-dsl,Maven,Gradle,Kotlin,Pom.xml,Gradle Kotlin Dsl,以下gradle脚本的build.gradle.kts版本是什么 apply plugin: 'maven' apply plugin: 'java' sourceCompatibility = 7 targetCompatibility = 7 dependencies { compile 'com.google.guava:guava:13.0.1' compile 'joda-time:joda-time:2.1'
apply plugin: 'maven'
apply plugin: 'java'
sourceCompatibility = 7
targetCompatibility = 7
dependencies {
compile 'com.google.guava:guava:13.0.1'
compile 'joda-time:joda-time:2.1'
testCompile 'junit:junit:4.11'
testCompile 'org.mockito:mockito-core:1.9.5'
}
task writeNewPom << {
pom {
project {
groupId 'org.example'
artifactId 'test'
version '1.0.0'
inceptionYear '2008'
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
distribution 'repo'
}
}
}
}.writeTo("$buildDir/newpom.xml")
}
apply插件:“maven”
应用插件:“java”
sourceCompatibility=7
targetCompatibility=7
依赖关系{
编译'com.google.guava:guava:13.0.1'
编译“joda时间:joda时间:2.1”
testCompile'junit:junit:4.11'
testCompile'org.mockito:mockito核心:1.9.5'
}
task writeNewPom我认为这与build.gradle.kts
文件相同:
plugins {
java
maven
}
java {
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
}
repositories {
jcenter()
}
dependencies {
compile("com.google.guava:guava:13.0.1")
compile("joda-time:joda-time:2.1")
testCompile("junit:junit:4.11")
testCompile("org.mockito:mockito-core:1.9.5")
}
tasks {
"writeNewPom" {
doLast {
project.the<MavenPluginConvention>().pom {
project {
groupId = "org.example"
artifactId = "test"
version = "1.0.0"
withGroovyBuilder {
"inceptionYear"("2008")
"licenses" {
"license" {
"name"("The Apache Software License, Version 2.0")
"url"("http://www.apache.org/licenses/LICENSE-2.0.txt")
"distribution"("repo")
}
}
}
}
}.writeTo("$buildDir/newPom.xml")
}
}
}
插件{
JAVA
专家
}
爪哇{
sourceCompatibility=JavaVersion.VERSION\u 1\u 7
targetCompatibility=JavaVersion.VERSION\u 1\u 7
}
存储库{
jcenter()
}
依赖关系{
编译(“com.google.guava:guava:13.0.1”)
编译(“joda时间:joda时间:2.1”)
testCompile(“junit:junit:4.11”)
testCompile(“org.mockito:mockito核心:1.9.5”)
}
任务{
“writeNewPom”{
多拉斯特{
project.the().pom{
计划{
groupId=“org.example”
artifactId=“测试”
version=“1.0.0”
使用GroovyBuilder{
“接收耳”(“2008年”)
“许可证”{
“许可证”{
“名称”(“Apache软件许可证,版本2.0”)
“url”(“http://www.apache.org/licenses/LICENSE-2.0.txt")
“分配”(“回购”)
}
}
}
}
}.writeTo($buildDir/newPom.xml)
}
}
}
您必须使用with groovybuilder
方法将非类型属性添加到模型中谢谢@tim_yates,非常有帮助!我相信如果没有我们的开源社区,我们会落后几个世纪。