我使用第三方Java应用程序,该应用程序提供gradle构建以在应用程序中对应用程序进行打包。
但是,最近他们将代码从build.gradle文件移动到已编译的插件。
这对我来说很烦人,因为我无法理解构建是如何工作的,因为大多数是在未记录的插件中。
除了隐藏代码(不确定为什么需要在构建脚本中隐藏代码......)移动到插件是否有好处 - 特别是当插件没有在其他地方重用时?
e.g。
你可以在普通的build.gradle脚本中用插件做事吗?
使用编译的插件与build.gradle脚本中的代码相同,构建运行速度会更快吗?
作为参考,大多数构建都是解压缩/压缩战争文件和签名罐。
答案 0 :(得分:0)
在功能上,您无法在gradle文件中无法执行的插件中执行任何操作。但从语法上来说,使用gradle文件无法实现插件的一些功能。
作为示例,文件buildSrc/src/main/groovy/Main.groovy
将自动在所有gradle脚本中可用。 buildSrc
文件夹是特殊的。
对于复杂的groovy代码,将它们作为插件开发还允许运行静态代码检查器,单元测试和类似工具来提高插件代码的质量,这对于gradle文件中的代码更难处理。
此外,编译的插件可以更快。