gpt4 book ai didi

Gradle Shadow 插件依赖项不存在于 runtimeClasspath 中

转载 作者:行者123 更新时间:2023-12-05 06:26:07 29 4
gpt4 key购买 nike

我使用 Gradle Shadow 插件添加的 shadow 作用域配置依赖:

依赖关系{ 影子“org.apache.flink:flink-java:$flinkVersion”

根据文档,这种依赖不应该存在于 shadow JAR 中(这是真的),它应该在编译类路径中(也是如此),但我对 runtimeClasspath< 没有这种依赖 配置。我做错了什么?

最佳答案

我怀疑文档有误。 Shadow 从 runtimeClasspath 配置构建 jar,这使得不可能从运行时依赖项构建不同的工件。 https://github.com/johnrengelman/shadow/blob/829647a06971ebc96c7d3df717f9a4e92811b602/src/main/groovy/com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin.groovy#L84-L85

可以通过中间配置和重定向 shadowruntimeClasspath 贡献解决方法

configurations {
// alternative "runtimeClasspath" configuration to provide to shadowJar configuration
create("uberJar") {
extendsFrom(configurations.runtimeOnly.get(), configurations.implementation.get())
isCanBeResolved = true
isCanBeConsumed = false
}
}

configurations.runtimeClasspath {
extendsFrom(configurations.shadow.get())
}

tasks.shadowJar {
configurations = listOf(project.configurations.named("uberJar").get())
}

关于Gradle Shadow 插件依赖项不存在于 runtimeClasspath 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56459352/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com