排除的依赖项列表的正确 Gradle 语法是什么?
What is proper Gradle syntax for List of Dependencies with exclusions?
我既是Gradle新手又是Groovy新手。
鉴于下面提供的示例是错误的(排除行失败),创建 Gradle 依赖项列表以及一个或多个排除项的正确语法是什么?错误是:
Caused by: org.gradle.api.internal.MissingMethodException: Could not find method org.jboss:jboss-common-core() for arguments...
上下文:我正在转换的旧 Maven 项目有几个 BOM(物料清单)。这是一个空的 POM 打包项目,它只有依赖项,因此您可以使用它来将它们作为一个组来依赖。我正在尝试以适合 Gradle 的方式执行此操作,并认为依赖项列表或数组将是门票。 ...除了我似乎不能写一个。 :-/
List stuff = [ "javax.servlet:javax.servlet-api",
"log4j:log4j",
"javax.jms:jms",
"com.oracle:ojdbc7",
"javax.transaction:jta",
"jgroups:jgroups",
"org.jboss:jboss-common-core" { exclude "org.jboss.logging:jboss-logging-spi" },
"org.jboss.cache:jbosscache-core",
"xml-apis:xml-apis"]
我无法验证它,因为我不知道某些工件的回购协议,但请您尝试使用以下代码:
apply plugin: 'java'
repositories {
mavenCentral()
jcenter()
}
ext.stuff = [
"javax.servlet:javax.servlet-api",
"log4j:log4j",
"javax.jms:jms",
"com.oracle:ojdbc7",
"javax.transaction:jta",
"jgroups:jgroups",
dependencies.create("org.jboss:jboss-common-core",
{ exclude group: "org.jboss.logging", module:"jboss-logging-spi" }
),
"org.jboss.cache:jbosscache-core",
"xml-apis:xml-apis"
]
dependencies {
compile stuff
}
task copyDeps(type: Copy) {
from configurations.runtime
into('deps')
}
下面这段代码:
dependencies.create("org.jboss:jboss-common-core",
{ exclude group: "org.jboss.logging", module:"jboss-logging-spi" }
),
可以替换为(groovy语法魔法):
dependencies.create("org.jboss:jboss-common-core")
{ exclude group: "org.jboss.logging", module:"jboss-logging-spi" }
,
我既是Gradle新手又是Groovy新手。
鉴于下面提供的示例是错误的(排除行失败),创建 Gradle 依赖项列表以及一个或多个排除项的正确语法是什么?错误是:
Caused by: org.gradle.api.internal.MissingMethodException: Could not find method org.jboss:jboss-common-core() for arguments...
上下文:我正在转换的旧 Maven 项目有几个 BOM(物料清单)。这是一个空的 POM 打包项目,它只有依赖项,因此您可以使用它来将它们作为一个组来依赖。我正在尝试以适合 Gradle 的方式执行此操作,并认为依赖项列表或数组将是门票。 ...除了我似乎不能写一个。 :-/
List stuff = [ "javax.servlet:javax.servlet-api",
"log4j:log4j",
"javax.jms:jms",
"com.oracle:ojdbc7",
"javax.transaction:jta",
"jgroups:jgroups",
"org.jboss:jboss-common-core" { exclude "org.jboss.logging:jboss-logging-spi" },
"org.jboss.cache:jbosscache-core",
"xml-apis:xml-apis"]
我无法验证它,因为我不知道某些工件的回购协议,但请您尝试使用以下代码:
apply plugin: 'java'
repositories {
mavenCentral()
jcenter()
}
ext.stuff = [
"javax.servlet:javax.servlet-api",
"log4j:log4j",
"javax.jms:jms",
"com.oracle:ojdbc7",
"javax.transaction:jta",
"jgroups:jgroups",
dependencies.create("org.jboss:jboss-common-core",
{ exclude group: "org.jboss.logging", module:"jboss-logging-spi" }
),
"org.jboss.cache:jbosscache-core",
"xml-apis:xml-apis"
]
dependencies {
compile stuff
}
task copyDeps(type: Copy) {
from configurations.runtime
into('deps')
}
下面这段代码:
dependencies.create("org.jboss:jboss-common-core",
{ exclude group: "org.jboss.logging", module:"jboss-logging-spi" }
),
可以替换为(groovy语法魔法):
dependencies.create("org.jboss:jboss-common-core")
{ exclude group: "org.jboss.logging", module:"jboss-logging-spi" }
,