В документах Gradle указано, что исходный набор SourceSet, main
, is compiled and assembled into a Jar. У меня есть группа файлов шаблонов, отличных от Java, которые я хочу скомпилировать с помощью настраиваемого плагина. Концепция SourceSet представляет собой хороший способ сохранить все эти файлы шаблонов, но я не хочу, чтобы Gradle пытался скомпилировать их как файлы Java. Есть ли способ переопределить поведение SourceSet по умолчанию, чтобы я мог сказать Gradle, что именно я хочу сделать с файлами в SourceSet? Если нет, существует ли еще одна конструкция Gradle, которую я могу использовать для группировки исходных файлов, отличных от Java, в логические единицы?Переопределение обычного поведения SourceSet, Gradle
0
A
ответ
1
Вот пример того, как держать не-Java файлы организованы и как их обрабатывать:
apply plugin: "java"
sourceSets {
template {
resources {
srcDir 'src/template'
include '**/*'
}
}
}
processTemplateResources {
doLast {
println sourceSets.template.output.classesDir
FileTree tree = fileTree(dir: sourceSets.template.output.resourcesDir)
tree.forEach {
println it
}
}
}
jar {
from sourceSets.main.output
from sourceSets.template.output
}
Я определил новые ресурсы только для набора источников. Это автоматически добавляет задачу ресурсов процесса, которая копирует ресурсы в выходной каталог. Затем вы можете их обработать.
В конце концов, просто добавьте их в свою банку, если необходимо.
Возможно, вам нужно добавить структуру папок ваших источников и определение градиента ресурсов. – sm4
Вы решили проблему? – sm4