我使用第三方Java应用程序,该应用程序提供了gradle构建以将应用程序与站点中的自定义打包在一起。
但是,最近他们将代码从build.gradle文件转移到了已编译的插件。
这让我很烦,因为我不再了解构建的工作原理,因为大多数都在未记录的插件中。
除了隐藏代码(不确定为什么要在构建脚本中隐藏代码...)以外,迁移到插件还有好处-特别是当插件没有在其他地方重用时?
例如
您可以在插件中做一些您在常规build.gradle脚本中无法做到的事情吗?
与使用build.gradle脚本中的相同代码相比,使用编译后的插件时,构建的运行速度会更快吗?
作为引用,大多数构建都是解压缩/压缩war文件和签名jar。
最佳答案
从功能上说,您无法在插件中执行任何操作,而不能在gradle文件中执行任何操作。从语法上讲,有些事情您可以使用Gradle文件无法实现的插件来完成。
例如,文件buildSrc/src/main/groovy/Main.groovy
将在所有gradle脚本中自动可用。 buildSrc
文件夹很特殊。
对于复杂的Groovy代码,将它们开发为插件还可以运行静态代码检查器,单元测试和类似的工具来提高插件代码的质量,而使用gradle文件中的代码则更加困难。
而且,编译后的插件可以更快。
关于gradle - 将Gradle构建代码移动到插件有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48836105/