00:00
大家继续观看上硅谷G技术视频,这节课我们给大家继续讲解,当我们引入一个G插件之后,我们需要关注哪些方面。通常我们引入插件之后,我们需要关注这五个方面,第一个就是这个插件的使用。不出意外的情况下,咱们通过apply后边跟plug in后边跟插件名的方式就可以啊,引用或者说使用这个插件了。当然这个插件名你也可以写插件的ID。OK啊。第二点,咱们还要关注引入了这个插件之后,这个插件为我们提供了哪些功能,或者说哪些task。这个我们可以通过官方文档或者。使用gidid tasks指令的方式。比如说在加入这个插件之前,你查看一下有哪些任务。然后把这个插件给它加上,加上之后此时我们再用grid tasks查看,诶看看有没有新增一些任务。比如咱们这里以Java插件为例,在Java插件这里我们就拓展了这么多功能。
01:04
比如说有build,有test,有啊架,有classes,有clean等等。OK啊,而且这些任务之间它是有依赖关系的。这些依赖关系就决定了任务的执行顺序。其实也就决定了项目构建的顺序。OK啊行,第三点就是当咱们引入一个插件之后,咱们也要关注一下。这个项目目录结构的变化。比如说咱们引入了Java插件之后。啊,Java插件里边规定的就是在SC目目录底下有一个加入目录和resources目录,在sc test目录底下也有加入目录,Resources目录。那你引入了其他插件之后,其他插件是不是也是一样这样的目录结构呢?不一定。啊,很可能不是。OK啊,所以这是咱们第三点要关注的。
02:02
就是项目目录结构问题。第四点,咱们也要关注依赖的管理方式。啊,说白了就是啊,这个依赖的范围。啊,这些本质其实也是由插件提供的。第四点就是咱们引入一个插件之后,咱们也要关注一下这个插件有没有一些拓展的属性或者方法。比如说Java插件,当我们引入了Java插件之后。他就为我们拓展了这么多属性。有了这些属性,咱们就可以在构建脚本中直接使用了。这是当我们引入一个插件需要关注的五个方面。那接下来咱们就以Java插件为例给大家演示一下。首先我们来到这个啊。官方文档。
03:04
然后我们以Java插件为例,我们来看一下。然后咱们点到某个插件的官方文档,只需要关注它这五个方面就可以了,第一个就是它的使用,就是第二个就是它添加的功能,第三个就是项目目录结构,第四个就是它的原级,源码级,这个后边咱们再说,再一个就是它的依赖管理啊,或者说依赖的范围。OK啊,行。首先比如说Java插件。那它怎么使用呢?在这里有它的介绍,你可以直接复制过来啊,其实就是通过plugin d SL的方式,除了这种方式,咱们前面也提到过,是不是你也可以使用apply apply in这种方式啊。OK啊,再一个第二点,咱们也要关注一下插件拓展了哪些功能。哪些功能你可以通过官方文档或者说使用grid tasks?啊,看一下加入一个插件之后。
04:00
之前是有哪些task,之后有哪些task?那它俩之间的差。啊,就是这个插件所提供的那些功能或者说任务。OK啊,比如官方文档对Java插件的提供的这些功能或者任务也有介绍,比如说它提供了编译Java源码的功能,处理啊,配置文件的功能。啊,等等,还有打成架包的,生成doc文档的,执行测试的等等,有这么多。包括对源码级,他的任务也做了拓展。啊,比如说拓展了这些任务。包括生命周期的也有。OK啊,这是引一个插件之后,咱们需要关注插件的功能,第三点就是咱们要关注一下项目的目录结构。啊,比如我们引入Java插件之后,Java插件里边规定的就是这样一个目录结构。当然这个目录结构咱们是可以啊改动的,比如。
05:00
在官方文档对这个项目目录结构也做了一个说明,就是引入Java插件之后,它的目录结构是这样的。然后如果我们想改动的话,诶我们可以啊这样改动来咱们给大家演示一下。比如我就在路上根目录底下这里做一个改动就可以了,咱们在改动之前。它是在src目录底下有main目录和test目录,Main目录和test目录底下分别有Java目录和resources目录,目前他们都是高亮的,没有问题。那如果我现在想改一下,我不想使用Java插件提供的默认的这个项目目录结构,诶,我可以啊这样改动。啊,我就针对Java插件对它的原级,所谓原级就是啊写Java代码或者说配置文件的。啊,你也可以理解成写测试代码和测试代码所需要的配置文件的啊,都属于原级OK。来。比如说我现在给它改成SC艾特硅谷,然后Java。
06:00
然后这里改成SC硅谷resources。那以后咱们写业务逻辑代码就放在SC艾特硅谷Java包下。儿子。写业务逻辑代码所需要的配置文件呢?就放在S硅谷resource目录下就可以了。来咱们可以啊,刷新一下。你会发现原来的面目,它就不生效了,不搞亮了。啊,那你说test母乳还高亮呢,哎,你也可以对test做改动,比如说。复制。针对test。啊,我做改动。以后啊。咱们的test。啊,我我在这个。以后。用于存放测试代码和测试代码所需要配置文件的目录,我也给他改了,改成这样的了。啊,改成这个。Ddd吧。此时,我们再来。刷新你再看。
07:01
叔叔,你看下Java插件,它默认的目录结构,SC下的main和test都不高亮了。当然你说也没有提供艾特硅谷或者ddd啊,这是因为这些目录咱们需要自己创建。比如说,我们在SC目录底下可以创建艾特硅谷目录。啊和ddd某。是不是在艾特硅谷目录下的加入目录底下写业务逻辑代码,在在艾特硅谷下边的resource目录底下写啊。业务逻辑代码所需要的配置文件。然后在ddd。目录底下的Java目录底下写测试代码,在DD目录的resource目录下写测代码所需要的配置文件。OK啊,行。这是原级的一些介绍O,而且啊在项目原级这里,它还提供了一些属性,这些属性啊都有对应的案例,你也可以点进去看一下,比如说output,这个是只读的,注意啊,他提的是output是只读的。
08:01
来,我们也点进去看一下,它规定了这个。这个源码级的输出。点进来,点进来之后你会发现它可以对业务逻辑代码指定它的输出位置。放。比如说我们把这个复制过来。正常情况下,咱们编译之后的。这个代码应该是放在哪儿的呢?来,我们再回来看一下啊。他默认是放在啊。这个build目录下的。啊,默认是放在build目录下的这个。对应的底下来咱们先给大家看一下。比如。我在艾特硅谷底下先创建一个Java类。
09:00
然后我在resources目录下也提供一个配置文件。我随便写的。OK啊,行。我把中间这些先去掉。然后。正常情况下,Java插件它会把编译后的字节码和配置文件放在这个build的。这个指定目录底下来咱们可以给大家看一下。比如我在这里执行一个build构建。先令。然后再build。Build之后你会发现。他会把艾特硅谷Java包下定义的这个APP类编译之后,放在build目录下的classes目录底下,没有问题,这是它默认的目录结构。
10:07
啊。他也会把这个配置文件放在build目录下的resources目录底下,也没有问题。那如果我们想对这个编译后的字节码,或者说配置文件想对它进行一个重新的布局的话。那我就需要修改一下它的。这个输出的母乳结构修改的话,咱们也参考。官方文档就可以了。比如说我们把这个直接复制过来。这样。再对src底下。啊,编译之后它就会把Java代码放在啊。当前项目的out目录下的这个B目录底下。而对这些配置文件呢,也会放在这个目录底下,此时我们再来试一下。
11:02
点build。没有问题。你会发现。这一次构建成功之后,它就在咱们项目根目录底下生成了一个out目录,在out目录底下有一个B目录,B目录底下存放的就是那些配置文件和。啊类所对应的词解码,它就不再放在这个build目录了。OK啊,行。这是Java插件所提供的。项目的目录结构咱们也可以改动。OK啊,第四点。就是当咱们引入了一个插件之后,咱们也要关注这个插件所提供的依赖管理方式,或者说依赖的范围。比如咱们这里还是以Java插件为例,你看当我们引入了Java插件之后。他所提供的依赖管理方式有这些什么?Implementation compile only。
12:00
Run time only等等,就这些。这些实际上都是由对应的插件提供的。然后下边他还给了两张图。一个是圆码的。配置管理啊,提供的是这些,一个是测试代码。对应的配置管理,或者说依赖管理。这些针对都是测试。测试的、加班使用的,而这些针对的都是正常业务逻辑代码。那个价保所使用的。OK啊,而且啊,这些依赖管理他们的这种。方式或者说继承方式也也是有的。行。最后就是咱们也要关注一下,加了一个插件之后,它有没有提供一些额外的属性或者方法,在这里也有对应的说明。嗯,你可以往下走。往下走,哎,在这里。你看加入了Java插件之后,它也提供了这么多。
13:00
这些属性。比如说有些属性还是只读的,只读就是你只能是通过变量来读取哈。啊。OK啊,比如说谁,比如说我们在这里定一个任务的时候啊,你也可以在这里引用。等等啊,总之啊,引用的时候你通过号大号是吧,然后do大号必须位于双引号内部,所以这里还得改成双引号啊,如果想使用的话,你可以通过这些属性名的方式来使用它,引用它就可以了。OK啊,当然你可以在这里用,也可以在任务,就是task定任务的时候使用。就这意思。OK啊,包括还有谁呢?你看这里啊,除了有这些基本的属性,还提供了这些方法。这些方面包括咱们还可以设置JDK源码的版本号,以及编译后自己码的版本啊,用source。
14:00
这个。比如说我可以设置版本号。用Java version点。然后version1.8啊,就指定JDK源码。用JDK1.8进行编译,然后包括它生成的字节码。版本号信息你也可以啊,这样指定一下。指定的也是JDK1.8版本的。OK啊,通常。源码和字节码对应的JDK版本咱们保持一致。OK啊,行。这是引入一个插件所需要关注的几点,以及咱们通过一个Java插件案例的方式给大家做了一个。真实的分析。啊。这是库里斗中的插件。
我来说两句