Значение Gradle DSL для него

Что значит it.name имею в виду? Это генерируется, или значения могут быть указаны? Является it лайк thisотносится к текущему объекту?

 jar.doFirst
 {
     // aggregate all the jars needed at runtime into a local variable (array)
     def manifestClasspath = configurations.runtime.collect { it.name }

     // remove duplicate jar names, and join the array into a single string
     manifestClasspath = manifestClasspath.unique().join(" ")

     // set manifest attributes - mainClassName must be set before it is used here
     manifest.attributes.put("Main-Class", mainClassName)
     manifest.attributes.put("Class-Path", manifestClasspath)
 }

Этот метод будет выполняться до jar задача?

увидеть:

/questions/28940489/gradle-sozdat-multi-proekt-jar/28940496#28940496

1 ответ

Решение

1.

it является неявным параметром для замыканий Groovy.

configurations.runtime.collect { it.name }

эквивалентно

configurations.runtime.collect { it -> it.name }

name это просто собственность. Для получения дополнительной информации о it посмотри здесь

2.

Да, оно будет выполнено перед заданием jar. Это часть API, смотрите здесь, в разделе 14.7, например

Другие вопросы по тегам