有没有像Gradle中有效的pom(Maven)?

时间:2016-12-12 17:02:59

标签: gradle

我几个月前开始使用Gradle,有时我的value文件出现问题。例如,如果我将这样的内容添加到我的文件中:

build.gradle

我不能告诉它会扩展到什么。在我的情况下,我发现它也引入了apply plugin: 'kotlin' 插件,而java插件本身也设置了一些配置。我怎么知道这些陈述会扩展到什么? Gradle有类似有效java 的内容吗?

澄清:我真正想知道的是每个build.gradle声明在幕后做什么而不查找文档等。

4 个答案:

答案 0 :(得分:1)

您可以列出具有自定义任务的插件

task pluginReport {
    doLast {
        allprojects.each { Project p ->
            PluginContainer plugins = p.plugins
            println "Project: ${p.name} has ${plugins.size()} plugins
            plugins.each { Plugin plugin ->
                println "   - ${plugin.class.name}"
            }
        }
    }
}

答案 1 :(得分:1)

从Gradle 2.10开始,您可以尝试使用gradle buildEnvironment。另请参阅this answerthis blog articlethe official docs

答案 2 :(得分:0)

Gradle插件,虽然它们可以以gradle脚本的形式存在,但其中很多都是二进制插件:java代码恰好由jvm在构建时执行。这意味着“build.gradle”是有效的build.gradle,除非你真的想看看字节码/插件源代码。

了解插件带入项目的最佳方式是read the documentation,或者如果文档不足,请尝试联系Kotlin开发人员/ Kotlin特定支持论坛。

编辑以回应澄清:不,如果不查看文档,就无法知道插件的作用;插件通常是与您的构建一起运行的Groovy / Java程序。这就像是要求你的计算机猜测“xyz.exe”没有谷歌搜索或运行它。

选择gradle插件对于构建过程来说是一个非常大而且深思熟虑的选择,它需要仔细完成并考虑它们带来的功能以及每个插件使用的设置,以确保您的构建提供您需要的结果。即使我们有SciFi计算机可以神奇地用普通英语神奇地说出随机二进制文件的作用,你可以通过做你的腿部工作,阅读文档,弄清楚你的插件做什么以及如何有效地实际使用你的插件来提供更好的服务。

答案 3 :(得分:0)

尝试gradle dependencies。输出类似于Maven的mvn dependency:tree

在此处查看文档:{​​{3}}