Gradle项目没有项目类,但有一些可用于构建脚本的自定义类?

时间:2017-03-10 10:37:43

标签: sql gradle

我正在考虑使用Gradle来操作mysql数据库。它将从文件系统中读取一些文件,分析它们并相应地填充数据库。

此类项目不会生成任何项目代码,因为所有输出都将转到数据库表。另一方面,gradle脚本应该访问一些自定义java或groovy类,以便于处理源数据。

这可能是Gradle用法吗?那么在哪里可以使用gradle-accessible类?我不想有单独的项目,为这个项目生成JAR。我不是单个项目,所以Gradle首先编译类并在脚本中使用它们。

这可能吗?

1 个答案:

答案 0 :(得分:1)

Gradle是可扩展的,因此您可以将buildSrc用于此类方案。它的工作方式如下:

  • 在项目build.gradle旁边有buildSrc dir,其中包含自定义build.gradle

  • buildSrc/build.gradle中,您可以自己定义脚本依赖项,实现插件和任务

  • 最后,您可以将buildSrc的插件应用于build.gradle

这非常方便,例如IntelliJ可以导入这样的项目并提供代码完成。

另一种方法是将所有必要的东西放在build.gradle本身。

这样的buildSrc项目可以编译为jar,作为插件发布和提供,或者它可以是github上的一个单独的项目,可以下载并用于操作数据。此外,无需实施Plugin,您可以使用静态方法,例如看看demo