Как установить абсолютный путь в Gradle для задач - PullRequest
1 голос
/ 27 сентября 2019

У меня есть базовая задача, подобная этой

task copy-Library(type: Copy) {
    from 'build/outputs/aar/app-debug_-debug.aar'
    into "D:\\root\\path\\to\\directory\\Plugins\\Android"
    rename { String fileName ->
        fileName.replace("app-debug_-debug.aar", "myLibray-debug.aar")
    }
}

она отлично работает

, но я бы хотел поместить путь "D:\\root\\path\\to\\directory\\Plugins\\Android" в некоторую переменную, чтобы я мог вызывать из других задач

into myPath

Я предполагаю, что мое задание завершится примерно так

\\ set the path variable
how.do.I.set myPath = "D:\\root\\path\\to\\directory\\Plugins\\Android"

task copy-Library(type: Copy) {
    from 'build/outputs/aar/app-debug_-debug.aar'
    into myPath
    rename { String fileName ->
        fileName.replace("app-debug_-debug.aar", "myLibray-debug.aar")
    }
}

, чтобы я мог добавить еще одну задачу, которая использует тот же путь?

task deleteLibrary(type: Delete){
    delete fileTree(myPath) {
        include '**/*.ext'
    }
}

1 Ответ

0 голосов
/ 27 сентября 2019

Я думаю, def - это то, что вы хотите:

def myPath  = "D:\\root\\path\\to\\directory\\Plugins\\Android" //define variable myPath 



task copy-Library(type: Copy) {
    from 'build/outputs/aar/app-debug_-debug.aar'
    into myPath   //"$myPath" also should work
    rename { String fileName ->
        fileName.replace("app-debug_-debug.aar", "myLibray-debug.aar")
    }
}

task deleteLibrary(type: Delete){
    delete fileTree($myPath) {
        include '**/*.ext'
    }
}

См. writing_build_scripts

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...