我最近开始学习Gradle和Groovy。我对build.gradle语法有一些疑问。
据我所知,基本上构建脚本文件使用groovy脚本。 例如,
task hello {
println 'hi!'
}
此语法等于
task('hello', {-> println('hi!');});
那么,这个语法等于什么?
jar {// this part. i couldn't figure it out.
manifest {
attributes 'Title': 'something'
}
/* this will be
*
* manifest(['Title': 'something']);
*/
// blah blah
}
答案 0 :(得分:1)
Java代码可能如下(请参阅Jar API Docs和Manifest API Docs)
Jar jar = project.getTaskByName('jar')
jar.configure((Jar task) -> {
task.manifest((Manifest manifest) -> {
Map<String,Object> map = new HashMap<>();
map.put('Title', 'something');
manifest.attributes(map);
});
});
一般来说,Groovy只是一种用于底层方法的语法糖。