我知道一个命令' gradle androidDependencies'在android中。这显示了这个项目依赖树。像这样输出。
+--- com.android.support:appcompat-v7:26.0.0-alpha1@aar
| +--- com.android.support:support-annotations:26.0.0-alpha1@jar
| +--- com.android.support:support-v4:26.0.0-alpha1@aar
| | +--- com.android.support:support-compat:26.0.0-alpha1@aar
我想知道它是如何工作的? gradle read config在哪里(lib依赖)。
对象是我想写一个脚本代码显示项目lib依赖(json格式),我不想使用format命令输出日志。没有人可以帮助我吗?感谢
答案 0 :(得分:0)
最后我找到答案,所以我在这里显示代码。
private checkPublishVersionName(def pom) {
for (org.gradle.api.artifacts.Configuration configuration : configurations) {
DependencySet dependencies = configuration.allDependencies;
for (Dependency dependency : dependencies) {
String libNameVersion = dependency.group + ":" + dependency.name + ":" + dependency.version
if (pom.version.contains("SNAPSHOT")) {
println "-----------> 依赖库:" + libNameVersion
} else { // 构造一个异常
if (libNameVersion.contains("SNAPSHOT")) {
println "请修正依赖库:" + libNameVersion
println "-----------> release 包不能有对 snapshot 的依赖。"
throw new PublishException("---> release 包不能有对 snapshot 的依赖。" + "请修正依赖库:" + libNameVersion)
}
}
}
}
}