Gradle - извлечь файл из зависимого фляги

Я хочу извлечь файл "default.jasperreports.properties» из зависимого jasperreports.jar и поместите его в zip-дистрибутив с новым именем "jasperreports.properties»

Образец сборки Gradle:

apply plugin: 'java'

task zip(type: Zip) {
    from 'src/dist'
  //  from configurations.runtime
    from extractFileFromJar("default.jasperreports.properties");
    rename 'default.jasperreports.properties', 'jasperreports.properties'

}

def extractFileFromJar(String fileName) {
    //    configurations.runtime.files.each { file -> println file} //it's not work 
    // not finished part of build file
    FileTree tree = zipTree('someFile.zip')
    FileTree filtered = tree.matching {
        include fileName
    }

}

repositories {
    mavenCentral()
}

dependencies {
    runtime 'jasperreports:jasperreports:2.0.5'
}

Как получить FileTree в extractFileFromJar () из зависимости jasperreports-2.0.5.jar?

В скрипте выше я использую

FileTree tree = zipTree('someFile.zip')

но хочу использовать что-то вроде (неправильно, но читабельно)

FileTree tree = configurations.runtime.filter("jasperreports").singleFile.zipTree

PS: попробуй позвонить

def extractFileFromJar(String fileName) {
    configurations.runtime.files.each { file -> println file} //it's not work 
...

но это неработает без исключения

Вы можете'изменить конфигурацию, которая не находится в неразрешенном состоянии!

Ответы на вопрос(2)

Ваш ответ на вопрос