首页 > 其他分享 >Gradle学习之源集SourceSets

Gradle学习之源集SourceSets

时间:2022-10-22 10:31:28浏览次数:40  
标签:插件 java Gradle 添加 源集 之源集 test SourceSets main

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.....

标签:插件,java,Gradle,添加,源集,之源集,test,SourceSets,main
From: https://blog.51cto.com/u_14689064/5785695

相关文章

  • Gradle基础知识-Wrapper,Daeman;Groovy闭包语法
    gradledescirbe:gradle本质就是一个bin脚本,分为window和unix。启动gradle:启动jvm加载lib所需的库gradlewrapper输入gradlewrapper命令会在当前目录创建安装一个jar包......
  • Gradle构建之生命周期
    Gradle是一个框架,作为框架,它负责定义流程和规则。而具体的编译工作则是通过插件的方式来完成的。比如编译Java有Java插件,编译Groovy有Groovy插件,编译AndroidAPP有Android......
  • 使用 Kotlin , Groovy ,Java 开发一个自己的 Gradle 插件
    使用Kotlin,Groovy,Java开发一个自己的Gradle插件先上效果图:image.png功能说明:korGenerate:自动生成Entity,Dao,Controller模板代码korFront:自动cop......
  • Installing Gradle
    Chapter 4. InstallingGradle4.1. PrerequisitesGradlerequiresaJavaJDKorJREtobeinstalled,version6orhigher(tocheck,use ​​java-version​​).......
  • gradle项目对比maven项目的目录架构以及对gradle wrapper的理解
    转载请注明出处:1.使用idea搭建gradle项目           注意 type 选择 gradle 以及 language 选择 grooy      ......
  • 【Gradle】Gradle配置全局阿里云镜像仓库
    一、参考资料Gradle配置阿里云仓库_梁海江的博客​​Gradle的配置操作以及配置阿里云镜像和整合本地Maven仓库-简书​​​​MavenPublishPlugin​​ ......
  • gradle打包apk时排除指定的so文件
    ndk{abiFilters"armeabi","armeabi-v7a","arm64-v8a"//指定要ndk需要兼容的架构(这样其他依赖包里mips之类的so会被过滤掉)}排除指定架构......
  • Gradle 排除某些测试
    build.gradletest{  exclude'com/mkyong/example/**'}注意该包使用反斜杠而不是句点或点(.)定义,如果您定义com.mkyong.example.** ,则不会排除任何测试类。 参......
  • gradle安装、配置,使用命令构建spring boot项目
    安装#下载到本地直接解压#配置环境变量GRADLE_HOMEGRADLE_USER_HOMEPATH#打开cmd:gradle-videa配置打包常用命令#cmd进入项目根路径gradlewbuildgradlewcleangradleb......
  • gradle总结
    安装点击查看详情#下载到本地直接解压#配置环境变量GRADLE_HOMEGRADLE_USER_HOMEPATH#打开cmd:gradle-v修改maven下载源#在init.d文件夹创建init.gradle文件allprojec......