2017-02-19 5 views
0

В документах Gradle указано, что исходный набор SourceSet, main, is compiled and assembled into a Jar. У меня есть группа файлов шаблонов, отличных от Java, которые я хочу скомпилировать с помощью настраиваемого плагина. Концепция SourceSet представляет собой хороший способ сохранить все эти файлы шаблонов, но я не хочу, чтобы Gradle пытался скомпилировать их как файлы Java. Есть ли способ переопределить поведение SourceSet по умолчанию, чтобы я мог сказать Gradle, что именно я хочу сделать с файлами в SourceSet? Если нет, существует ли еще одна конструкция Gradle, которую я могу использовать для группировки исходных файлов, отличных от Java, в логические единицы?Переопределение обычного поведения SourceSet, Gradle

+0

Возможно, вам нужно добавить структуру папок ваших источников и определение градиента ресурсов. – sm4

+0

Вы решили проблему? – sm4

ответ

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 
} 

Я определил новые ресурсы только для набора источников. Это автоматически добавляет задачу ресурсов процесса, которая копирует ресурсы в выходной каталог. Затем вы можете их обработать.

В конце концов, просто добавьте их в свою банку, если необходимо.

 Смежные вопросы

  • Нет связанных вопросов^_^