Как избежать создания каталога сборки при выполнении задачи gradle?

#gradle #gwt #build.gradle #gradle-plugin

#gradle #gwt #build.gradle #gradle-плагин

Вопрос:

Я пытаюсь выполнить очень простую задачу, чтобы показать включенные build.gradle репозитории.

 buildscript {
    repositories {
      mavenCentral()
    }
    dependencies {
        classpath "org.wisepersist:gwt-gradle-plugin:1.0.8"
    }
}

plugins {
    id 'java'
}
...
apply plugin: 'gwt-compiler'
...
task showRepos {
    group 'Circus'
    description 'Show all included repositories'
    doLast {
        println "nAll repos:"
        println repositories.collect { it.name } 
        println "n"
    }
}
  

Однако, когда я запускаю это с помощью gradle showRepos , это автоматически создает каталог «build»:

 build/
└── gwt
    ├── cache
    ├── extra
    ├── gen
    └── work
  

Как я могу предотвратить это автоматическое создание?


ОБНОВЛЕНИЕ-1

Кажется, запущены какие-то непослушные настройки GWT…

 # gradle showRepos --console verbose --info

> Configure project :
Evaluating root project 'circuitjs' using build file 'F:...build.gradle'.
Using gwt.args for test: 
    -war     F:...war 
    -extra   F:...buildgwtextra 
    -workDir F:...buildgwtwork 
    -gen     F:...buildgwtgen 
    -logLevel INFO
Using gwt.persistentunitcachedir for test: {0}
All projects evaluated.
Selected primary task 'showRepos' from project :
Tasks to be executed: [task ':showRepos']
:showRepos (Thread[Execution worker for ':' Thread 2,5,main]) started.
  

Ответ №1:

Какую задачу вы запускаете из командной строки? Если вы запускаете

 gradle showRepos
  

Тогда он не должен создавать эти папки GWT. Я предполагаю, что либо

  1. У вас есть задача gwt в вашем графике задач (т. Е. вы выполняете задачу, которая зависит от задачи gwt)
  2. У вас есть непослушная задача gwt, которая создает папки на этапе настройки (когда это должно происходить только на этапе выполнения)

Комментарии:

1. Смотрите этапы сборки . Вы не должны выполнять никакой реальной «работы» на этапе настройки. Я предполагаю, что вы переместите некоторый mkdir и т.д. В вашей задаче gwt внутри doFirst {...} закрытия, чтобы это произошло на этапе выполнения

2. Извините, я не понимаю, о чем вы говорите. Что я должен сделать?

3. Что ж… Не видя логики, которая создает каталоги, очень сложно помочь

4. Вот почему я спрашиваю здесь. Если бы я знал логику, я мог бы предотвратить это. Вероятно, спрятано в исходных текстах самого gwt-gradle-plugin or gradle .

5. Ничего общего с gradle, это будет плагин GWT gradle