如何从gradle中的DefaultExternalModuleDependence获取依赖项扩展?

如何从gradle中的DefaultExternalModuleDependence获取依赖项扩展?,gradle,dependencies,Gradle,Dependencies,我正在尝试获取我在构建中配置的所有依赖项,以便解决所解释的问题。我的问题是,我有一些依赖项,它们有多个工件(例如.zip和.jar)。 当我使用configurations.compile.allDependencies.each时,我获得一个DefaultExternalModuleDependency类型的对象。从这个对象中,我可以很容易地获得groupId、version和artifact id,但似乎不可能获得我用@zip在dependencies闭包中定义的类型(扩展) 我怎样才能得到

我正在尝试获取我在构建中配置的所有依赖项,以便解决所解释的问题。我的问题是,我有一些依赖项,它们有多个工件(例如.zip和.jar)。 当我使用configurations.compile.allDependencies.each时,我获得一个DefaultExternalModuleDependency类型的对象。从这个对象中,我可以很容易地获得groupId、version和artifact id,但似乎不可能获得我用@zip在dependencies闭包中定义的类型(扩展)

我怎样才能得到它

更新:

这就是我正在做的:

dependencies {
    publish 'myorg:myart:1.9.4'
}
...
pom.withXml {
                def dependenciesNode = asNode().appendNode('dependencies')
                configurations.publish.allDependencies.each{
                    ["zip","txt"].each { type ->
                        def dependencyNode = dependenciesNode.appendNode('dependency')
                        dependencyNode.appendNode('groupId', it.group)
                        dependencyNode.appendNode('artifactId', it.name)
                        dependencyNode.appendNode('version', it.version)
                        dependencyNode.appendNode('type', type)
                    }
                }
            }
        }
到目前为止,我总是将一个.zip和一个.txt文件存储为工件,所以每次闭包都使用[“zip”,“txt”]进行解析,但它仍然是一种简化的方式

谢谢,
米歇尔。

你能展示一下你的尝试吗?示例
build.gradle
例如,我已经更新了描述