00:00
好,通过我们刚才的介绍呢,大家只要能够意识到啊,说ma是我们必须要用的啊,不是一个可有可无的东西,这样就可以,接下来呢,我们来看一下,说这个mini它到底是什么?哎,其实这个也很简单,Mid就是阿帕奇维护的一个构建和依赖管理的工具。这里边儿呢,这一节我们最重要的是给大家来说一说,什么是构建,什么是依赖啊,刚才我们也已经提到了,构建呢,它包括我们像编译啦啊,像我们这个打包啦啊部署啦等等啊这样的一些个操作啊,那这是这是这个呃,举的一些个相当于是举的具体的例子,那么说就是从概念上来说,到底啥叫构建呢?首先呢,大家不要有一个误区啊,说构建呢,并不等于创建啊,并不等于创建,说我建一个Java类算不算构建呢,这个还不能够算啊,不能算,呃,并不是创建啊,构建并不是创建,构建的,构建的意思呢,其实应该说呢,它就是使用原材料啊来生产产品。
01:03
啊就好比说呢,我们想要去呃炖一只鸡啊,原材料是什么呢?原材料就是一只鸡,还有呢,呃呃,这个你炖鸡用的水啦,哎,然后调料啦,啊这是哎配菜啦等等是吧,这就是我们原材料,然后经过你的一系列的加工啊,经过你的一系列的处理啊,你的烹饪的过程,最后呢,这只鸡呢,它变成了一锅啊这个香喷喷的鸡汤,这个时候,哎,这就是一个我们完成了从原材原材料到生产产品的这样一个过程。那么回到我们的Java程序,我们来说呢,说呃,我们就以开发一个外部项目为例啊,来说什么是构建过程,因为我们普通的Java工程呢,你没有办法给最终的用户来访问啊,其实呢,你我们开发的Java工程将来我们会看到啊,它其实都是我们外部外部工程里边的家包,然后这个外部工程呢,它其实跑起来以后啊,它跑起来以后。
02:06
它就是我们这个真正用户可以访问的啊,所以说我们这儿呢,还是以这个最终的形态,以外部工程来举例子来说,原材料呢,就是我们Java的原程序啊,我们基于HR毛格式的,我们里边Sam Sam lef这样语法的页面,视图模板的文件啊,你这里边儿涉及到的图片啦,你框架用到的配置文件啦等等这些是我们的原材料。这些个原材料呢,我们需要把它们加工成最终的产品啊,产品就是一个可以在服务器上运行的项目。那么中间加工的过程呢,肯定包括这些操作,你比如说呢,我们根据Java的源代码去编译,一定呢,最终是需要得到class字节码文件,我们才能够去运行,这是肯定的,然后呢。这个samlif这样的啊,视图模板文件,他们在运行的时候,其实也一定会里边涉及到一些表达式的解析啊,这时候也是需要去执行相应的Java代码,还有呢,像图片啊,像配置文件这些呢,不需要进行转换,但是呢,他们在进行打包的时候要放到指定的位置啊,要在打包的过程中呢,放到我们压缩包里边的指定的目录结构里边。
03:19
哎,所以说这个时候呢,我们把这些操作都做了,才能够得到一个在服务器上可以运行的这样的一个项目。诶,这是我们从这个角度啊,从这个,呃,原材料生产产品的这个角度来说的。下一个呢,我说说啊,咱们先初步的看一下,说这个构建过程呢,它里边包含哪些个环节啊,这个里边我们列出来的是一些主要的环节,并不是说只有这些啊,这里边这是比较典型的主要环节,其他的环节呢,以后我们在学美文的时候呢,后边就会接触到啊,但是我们这些是最重要的第一个清理,其实清理呢,就是把以前构建的结果呢给删掉啊,哎,删除掉以后呢,好重新来进行这个构建。
04:04
就好比说呢,我们后边会看到啊。所有的构建的结果呢,都会放到这个target目录里边,诶,那么这个target目录呢。就是存放我们所有的构建的结果啊,这些个构建的结果呢,呃,既然都总的都在这个目录里边,那么清理的话,其实就是把target目录一删就完了啊,这个操作很简单。然后呢,编译这个也好理解,不陌生,就是Java程序呢,我们去把它给编译成我们的自解码文件啊,7.class自解码文件测试诶。测试呢,我们没问,这默认也是使用只有来进行测试的,哎,我们单元测试的事实上的标准啊,只有,那么我们说呢。这个微问里边哈,他把这个测试呢,也作为构建的一个环节,甚至于说呢,微问是希望能够达到所有的构建环节呢,我们能够自动的去执行啊,能够自动的去执行。
05:04
呃,那么这个时候我们说啊。这个。用g unit整合了unit以后来执行的这个测试啊,它其实呢,在ma这是可以自动去执行的,哎,也就是说呢,你可以提前准备好一些个针对特定功能点的测试程序,然后呢,妹妹执行到这儿的时候,哎,就可以来执行这个,它就自动来执行这些测试程序了啊,它自动来调用测试完了以后呢,这边会有一个报告。啊,就是你刚才这个测试它是成功了还是失败了啊,中间有没有报错呀,中间你有没有跳过的呀,等等啊哎,测试这测试如果通过的话没有问题,我们下一个大的环节就是打包。哎,这个打包呢,就是Java工程哈。打一个架包啊,外部工程呢,去打一个袜包啊,就是当然还有其他的这个打包的形式,但是我们最重要最经典的就是这样的两种。还有一个呢,安装把这个一个微问工程经过打包操作生成的夹包或者袜包啊,给它存入到我们的微问仓库里边。
06:12
哎,我们这儿写这个存入更准确一点啊呃,这个呢,这个操作哈,我们要不用慰问的话呢,还没有这个,哎,还没有这样的一个安装的一个过程啊,哎,用了mavo以后呢,Ma会有一个专门的仓库来存放我们这些夹包,安装呢,就是把夹包给存进去。然后呢,这个部署呢,其实这个架包和袜包呢,其实还不太一样哈。呃,部署这个价包,这是我们ma问里边部署这个环节的一个默认的一个功能啊,就是说呢,把它,哎把一个架包呢,去把它给部署到啊,像我们这个ne ne neus这样的mini私服服务器上。
07:02
哎,然后呢,说我们部署这个袜包,通常来说呢,需要借助于我们一些个没的插件,例如这样的这个卡go啊,就是说将我们这个外包呢,给它这个部署到我们这个tomca的服务器上,哎,然后他在负责把tomcat给跑起来啊,这个cargo,但是呢,其实这个maven这儿呢,就是在这个部署袜包这儿哈,就它的这个智能的自动化的程度呢,我们觉得还是不够的,所以这方面呢,其实通常我们还是会结合这个gins啊,然后呢,再和我们版本控制服务器啊,版本控制中心呢,给它连起来实现呢,我们只要代码一推送的话,它这边就自动部署,哎,那么这个事儿呢,我们说哈,这个金S哈,也是我之前录过一个专门录过一个金克S这个视频,然后咱们今年的2022年呢,也是有计划去把这个金S视频再重新去录一下啊大家这个。
08:03
呃,啊,在我录出来之前呢,大家可以参考这个以前的这个JS学习的这个资料啊,后边等我录出来以后呢,也呃,大家可以再多来捧捧场啊,这个呢,就是我们来介绍的一个主流的啊,我们我们或者说是我们在微问构建过程当中,我们比较关心的一些个过程。哎,大家呢,还是说啊,在我们前边介绍的基础上呢,通过我们介绍这些呢,大家对构建呢,再进一步,哎,深化一点对它的这个理解啊,然后当然还需要在以后呢,在以后后续的学习当中,我们这些地方啊,都会看到他具体的命令是什么啊,在以后在慢慢的再进一步的再去强化。
我来说两句