0
点赞
收藏
分享

微信扫一扫

Gradle学习之源集SourceSets

grovvy学习之源集Sourcesets

定义

源集表示一组用于编译执行的源文件,一个源集有一个相关联的编译类路径和运行时类路径。

默认源集是main和test目录,也可添加其他的源集,在sourcesets熟悉中新增源集,并设置该源集的属性

作用意义

javaPlugin就是利用源集来管理java源代码目录的,并且该插件默认提供了两个源集就是main和test。

  • main目录包含项目源代码,用于编译成jar文件
  • test目录包含单元测试代码,用于编译后使用junit或testng执行

可设置属性

在build.gradle中设置sourcesets闭包(可查看之前的闭包文章,加深映像),并添加源集,在源集中设置该源集的信息

属性表格,最后三行展示的是java目录的设置,同理和java同级的resource目录也有这三个属性可以设置。

image.png

示例:

sourcesets{

    //默认的main和test两个源集,未指定编译的java,resource文件夹时默认为当前文件下

    main{

    }

    test{

    }

    // 新增一个名字叫beiyang 的源集,之后在src目录下面创建包的时候就会提示创建beiyang/java和 beiyang/resource这两个文件了;如果想要指定编译java的自定义文件夹,通过java.srcdirs即可指定;也可设置输出后的class存放位置参考上面属性
    beiyang{

    }

}

动态添加源集

上面是自定义的源集,那么自带的源集maintest是什么时候被添加的呢?我们创建工程的时候也没有看见sourcesets闭包是吧?

答案是插件中帮我们创建了源集,看下图代码即可理解。插件内部可以动态添加源集(下图代码为groovy插件帮我们添加的源集),因此我们也可以实现不用手动定义sourceSets闭包属性采用插件动态添加源集

image.png

如何检验添加成功

源集添加成功后,我们在src目录下面创建包的时候as会提示我们要添加的对应的java和resource包,非常银杏化

源集添加依赖

在dependcies属性中设置需要为源集引入的依赖,默认为main,如果想要指定源集添加依赖,则在引入依赖关键字的前缀添加源集名称即可,例如testcompile.....

举报

相关推荐

Gradle学习-1

0 条评论