Может ли Gradle обрабатывать структуру каталогов сборки, которая не соответствует соглашениям по умолчанию?
Вопрос
я работаю над Джава муравей+плющ основанный проект, который имеет следующую структуру каталогов:
projectRoot/src
projectRoot/classes
projectRoot/conf
projectRoot/webservices
это прекрасно работает в муравей но я собираюсь мигрировать в Градл.
Есть ли способ определить структуру каталогов, не относящуюся к Maven, в Gradle, или мне следует поискать развлекаться?
Решение
С Gradle очень легко адаптироваться к любой структуре каталогов.См. Работа с исходными наборами раздел Руководства пользователя Gradle.
Другие советы
Пример с нестандартной структурой каталогов проекта (пользовательский макет):
sourceSets {
main {
java {
srcDir 'sources/main/java'
}
outputDir = file("$workDir/client/program")
// For older version (now deprecated):
//output.classesDir = "$workDir/client/program"
}
test {
java {
srcDir 'sources/test/java'
}
outputDir = file("$workDir/client/tests")
// For older versions (now deprecated):
//output.classesDir = "$workDir/client/tests"
//output.resourcesDir = "$workDir/client/tests"
}
resources {
srcDirs 'sources/test/res'
}
}
Пытаться:
sourceSets {
main {
java {
srcDirs = ['src/java']
}
resources {
srcDirs = ['src/resources']
}
}
}
или
sourceSets {
main.java.srcDirs += 'src/java'
main.resources.srcDirs += 'src/resources'
}
Не связан с StackOverflow