Не удается исключить каталоги для задачи копирования Gradle - PullRequest
0 голосов
/ 11 октября 2018

У меня есть скрипт gradle, в котором я хочу скопировать 3 директории в другую папку.Но я также должен исключить каталоги.Это древовидная структура, с которой я начинаю:

src > java > tms > common  
src > java > tms > dla 
src > java > tms > server 
src > java > tms > javaserver > common 
src > java > tms > javaserver > dock > transaction > local 
src > java > tms > javaserver > dock > transaction > tcd 
src > java > tms > javaserver > dock > transaction > files

Папки, которые я хочу скопировать:

src > java > tms > common 
src > java > tms > javaserver > common
src > java > tms > transaction > local
src > java > tms > transaction > files 

Я использую команду Gradle:

task copyTmsCoreSharedFiles(type: Copy) {   
    from ('src/java/com/fedex/ground/tms')  
    include '**/common/*'   
    include '**/javaserver/common/*'            
    include '**/javaserver/dock/transaction/*'  
    exclude '**/javaserver/dock/transaction/tcd*'       
    into  rootProject.rootDir.getAbsolutePath() +"/target-ant"+"/tmscoreshared"
}

В результате создаются все папки.Все папки в док включены.(Когда я выбираю только папку транзакция , почему включаются другие папки?) Директива exclude вообще не работает.

Спасибо.

1 Ответ

0 голосов
/ 12 октября 2018

Это должно работать:

ext.dest = project.file("target-ant/tmscoreshared")

task copyTmsCoreSharedFiles(type: Copy) {
    includeEmptyDirs = false
    from ('src/java/com/fedex/ground/tms')
    exclude '**/dla/**'
    exclude '**/server/**'
    exclude '**/tcd/**'
    outputs.dir(dest)
}

task clean {
  doLast {
    dest.delete()
  }
}

Вы также можете найти демо здесь .

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