Значение 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, например