您如何以编程方式访问已解决的实现依赖项?
How do you programmatically access resolved implementation dependencies?
我想访问有关已通过平台 bom 设置版本的已解决实现依赖项的元数据
dependencies {
implementation platform("internal.spinnaker:clouddriver-bom:${spinnakerRelease}")
annotationProcessor platform("internal.spinnaker:clouddriver-bom:${spinnakerRelease}")
testAnnotationProcessor platform("internal.spinnaker:clouddriver-bom:${spinnakerRelease}")
implementation "com.netflix.spinnaker.clouddriver:clouddriver-web"
implementation "com.netflix.spinnaker.clouddriver:clouddriver-core"
implementation "com.netflix.spinnaker.clouddriver:clouddriver-security"
}
我希望能够以编程方式访问已解析的 clouddriver-web 版本。
我在网上能找到的所有解决方案都引用这样的代码。
configurations.compile.resolvedConfiguration.firstLevelModuleDependencies
您无法使用实现配置执行此操作,因为它会引发无法解析的错误。
最终目标是让已解析的依赖项成为 META-INF/build-info.properties 中的一个条目,以便可以像这样使用它:https://www.vojtechruzicka.com/spring-boot-version/
我不知道如何在任务或 gradle 文件中获取版本。
任何帮助将不胜感激,干杯!
使用 Gradle 6.0,以下 build.gradle
:
plugins {
id 'java'
}
repositories {
jcenter()
}
dependencies {
implementation 'com.google.guava:guava:29.0-jre'
}
task log {
doLast {
println(configurations.compileClasspath.resolvedConfiguration.firstLevelModuleDependencies)
}
}
当 运行 与:
./gradlew :log
打印:
> Task :log
[com.google.guava:guava:29.0-jre;compile]
implementation
配置中的任何依赖项都将显示在编译类路径中,如下图所示,我从 The Java Plugin.
中获取
我想访问有关已通过平台 bom 设置版本的已解决实现依赖项的元数据
dependencies {
implementation platform("internal.spinnaker:clouddriver-bom:${spinnakerRelease}")
annotationProcessor platform("internal.spinnaker:clouddriver-bom:${spinnakerRelease}")
testAnnotationProcessor platform("internal.spinnaker:clouddriver-bom:${spinnakerRelease}")
implementation "com.netflix.spinnaker.clouddriver:clouddriver-web"
implementation "com.netflix.spinnaker.clouddriver:clouddriver-core"
implementation "com.netflix.spinnaker.clouddriver:clouddriver-security"
}
我希望能够以编程方式访问已解析的 clouddriver-web 版本。 我在网上能找到的所有解决方案都引用这样的代码。
configurations.compile.resolvedConfiguration.firstLevelModuleDependencies
您无法使用实现配置执行此操作,因为它会引发无法解析的错误。
最终目标是让已解析的依赖项成为 META-INF/build-info.properties 中的一个条目,以便可以像这样使用它:https://www.vojtechruzicka.com/spring-boot-version/
我不知道如何在任务或 gradle 文件中获取版本。
任何帮助将不胜感激,干杯!
使用 Gradle 6.0,以下 build.gradle
:
plugins {
id 'java'
}
repositories {
jcenter()
}
dependencies {
implementation 'com.google.guava:guava:29.0-jre'
}
task log {
doLast {
println(configurations.compileClasspath.resolvedConfiguration.firstLevelModuleDependencies)
}
}
当 运行 与:
./gradlew :log
打印:
> Task :log
[com.google.guava:guava:29.0-jre;compile]
implementation
配置中的任何依赖项都将显示在编译类路径中,如下图所示,我从 The Java Plugin.