00:00
在这儿我们要想运行这个命命令哈,呃,我们得跟大家说一下第七个,嗯,常用这个命文命令,第一个有一个首先要注意的这个问题啊,执行与这个构建过程相关的这个没文命令必须进入。嗯,这个泡沫点毛所在的目录啊,这里边什么叫做这个与构建过程相关哈,就是什么这个像编译啦,诶,测试啦,打包啦,部署啦这样的命令,这属于是与构建过程相关的,而我们刚才运行的这个,你看MVN-V,这个跟构建过程没关系,我只是看一看vvo核心程序它自己的版本,那么这样的命令呢,就没有这样的要求啊,你随便在哪个目录下面执行都可以,但是我们这个与构建过程相关的这样的命令必须得进入pom.X毛所在的目录,你看我们现在呢,PM.x毛是在这个hello下边,所以说你一会儿运行命令的时候就得进入这个hello所在的目录,诶那么我们说这个常用的命令有哪些呢?你看有这个。
01:28
你看啊,Mvn clean这个是清理,这样吧,清MVN的compare是编译MV的这个compare这个是编译测试程序,所以这个上面这个呢是编译主程序。然后MVN的test,这个是执行测试,然后这个MN的package,这个是执行这个打包。
02:09
那么还有一些其他的啊,我们一会儿用到了再说,哎,我们现在呢,就尝试着咱们先不用清理,因为没有编译过,我们先尝试执行一下这个编译。诶,我们首先呢,得进入这个命目录哈,这个这个进入这个这个这个呃盘符啊D,然后呢,我们得去进入一下这个hello,这个目录CTRLC。然后我们就想运行一下MVN的comp,这个时候它会不会出问题呢?很有可能会出问题。Download loading download load的又download loading,他可不是跟你开玩笑啊,他可不是跟你闹着玩,他真的会去下载,真的会连外网去下载,我为什么为什么有网呢?因为我拿我拿我手机开了一个热点,你觉得可能吗?我连红包都不发,你想我能告诉你我这个密码,我上课也是这个,我的心里已经在流血了,哗哗的都是流量呀,啊这么多呢,所以说在这哈,这个这个地方呢,我们就这个事情要给大家解释一下了,让他先在这下载着啊,让他先下载着,我们在这得跟大家说一说,当然有办法了,不要着急啊,咱们一步一步来。
03:49
关于这个联网的问题,关于联网的问题,首先我们说哈,这个ma的核心程序中仅仅定义了抽象的生命周期,生命周期这个概念我们后边会介绍啊,仅仅定的生命周期,呃,但是具体的工作必须由呃特定的插件来完成,而插件本身并不包含在meven的核心程序中,它本身并不在这个核心程序里边,那怎么办呢?那么妹们,那么我们说哈,执行这个与构建过程。
04:43
啊,就是说呃,当我们的我们执行的命文命令需要用到某些插件时,诶,这个M核心程序会首先到本地仓库中查找看有没有,那么本地仓库的默认位置是在哪儿呢?是这么个目录哈,是这个叫当前就是。
05:16
嗯,就是系统中当前用户的加目录,这个不太好理解啊,一会我给大家说一下这个目录下边去找这样一个目录叫兔,然后呢,你抛。Repository,那么就得给大家解释一下,什么叫当前,就是系统中当前用户的加目录,你看我们用这个Windows也好,用这个Linux也好啊,其实你都得是有,都得是通过这个用户来登录进来的,那么你看我现在呢,这个登录的用户呢,是这个啊,这是我登录的用户,那么这个系统呢,它会为你每一个用户呢,它会为你每一个用户哈去。
06:01
设定一个你这个用户专属的一个目录,在系统当中,你这个用户专属的一个目录,那么就就我们Windows而言呢,这个是在我们这个C盘用户下边啊,其实它是user。你看它其实它是users啊,然后呢,跟你用户名相同的这个目录啊,名称和你用户名相同的这个目录,就是你当前用户的加目录,你看这个时候呢,他这就会给你自动创建一个点m two这个目录,这里边有一个report,这就是刚刚下载的这些,看看他下载了多少呢。这就已经,这什么叫才两兆,什么叫才两兆,什么花的不是你的流量啊,哎,但是你要知道这只是一个命令啊,Build success啊构建成功了,这只是一个命令啊,这只是我们这个编译这一个命令,这你下回再运行这个别的命令呢,它还有这个别的要下载的插件啊,这个它不是说下载这一个就完事了,那么这是这个默认的本地仓库。
07:09
呃,然后呢,他会到这个目录下面去找,我们在这儿写一个例子哈,比如说是这个目录,比如说这个目录,这个你就没必要,就是这个是你的这个登录当前系统的用户名,那么这个M核心程序如果在本地仓库中找不到需要的插件,那么。它会这个自动连接这个外网,诶到中央仓库去下载啊,这就是我们这儿为什么会有这个挡楼顶啊。
08:03
正在下载downloading是正在下载downloaded的是已经下载完成的,就是它会自动的去连这个外网去下载,说如果此时呃无法连接这个外网,则这个构建失败,就他也没辙,你连不上外网,你下载不下来,那就它也没辙,当然了,你下载下来的哈,嗯,你下载下来的这个呢,它只下载一次就够了,你下次再运行的就不用再下载了,你像我们现在这个呢,你刚才这个命令啊,你再重新执行一下。他就不用再下载了啊,这也不用特别的心疼哈,那问题是我们这儿如果确实不能够联网怎么办呢?在这儿我已经为大家准备好了,就这个目录下边啊,这些就是这个已经下载好了的啊,这是一个已经下载好了的一个仓库,我们只要把本地仓库的目录呢,定位到这就好了啊,你看这这就这是100多兆的,这是100多兆的,那所以下边呢,我们就需要去修改一下默认的本地仓库的位置,诶这个是修改默认本地仓库的位置,可以让这个me核心程序到我们事先准备好的目录下这个查找插件,那怎么改呢?这个第一步呢是找到我们这个。
09:38
的这个解压目录,找到这个解压目录下边有一个careful,下边有一个setting,诶我们去找一下。妹妹的解压目录,我刚才是解压到这儿了,你看下边有一个comfort啊,Con就是配置文件都在这个里边,你看里边有个setting,找到它,找到这个文件,打开这个文件,在这个文件里边呢,你去找一下这个local repository这个标签。
10:10
诶,在这个setting文件中找到这个标签,找到这个标签,但是你得注意哈,这个标签现在是在一个注释里边的,所以说你这里边你改这个值呢,没用,你得把它从注释里边给它取出来。啊是将诶这个将这一部分内容啊。将它从这个注释中取出,然后呢,将呃。标签体内容修改为。嗯,已经准备好的这个命问仓库的目录,你看我现在准备好的这个,我现在准备好的这个是就是这个目录,就是D盘下边的这个IP没问就是它,所以我在这儿呢,我去把中间这一部分改成这个就OK了,万事大吉,这样一去改,这个时候呢,微问他核心程序再需要什么东西,就是上我们这样的目录里边去找了啊,就是上这样的目录里边去找了,那么大家可能会想,那你是不是你得把这些东西给我们发了呀,其实不用再专门发了这个东西呢,你看我们讲义里边,看这个压缩包里边,就是它这已经给你这个这个包已经准备好了,大家把这个解压一下就好了,你自己。
11:55
找一个地方去解压了啊,然后去,然后在这个配置文件里边,在这儿呢,去指定你解压的那个目录啊呃,当然你解压呢,有可能这个你不是这一层哈,反正呢,你得做到什么呢?我得保存一下,反正你得做到就是它这个顺着你这个目录呢,过来以后呢,能够看到这些具体的东西,有的同学呢,他这个目录哈,有的同学是这样的,就是他比如说他自己又又多多长了这么一层,那你那你如果是你挤压以后,如果是这样的话,你在这儿配的时候呢,你就得给他这个配成这样的,你配的时候呢,就得是配成这样的,所以说你得按照你的这个实际情况来来做啊,得按照你的实际情况来做,你不要完全的这个生搬硬套啊。
12:46
好,然后呢,改成这个以后,我们再试一试,这回呢,他就应该就不用下载了。这回他就应该就不用下载了,我们还是回到这儿啊,比如说呢,嗯,不过现在联网不联网都无所谓了,我们看这个它这个过程中的打印就行了,MVN的,比如说package,我们执行一个打包的命令。
13:18
诶你看构建成功整个这个过程当中呢,我们运行命令呢,是从这儿开始的,这个过程里边,你看它没有这个挡楼顶了,它就不用再去外边下载了啊,诶那就说明我们现在这个配的这个呢,现成的这个呢,已经这个就起作用了,所以大家你也不用这个这个这个考虑流量的事儿是吧,你就自己你就用我们这个现成的这个就行了,这个应该说能够满足我们绝大部分的情况的要求,但是呢,有一些特殊情况哈,这个是比较遗憾的,我用的JDK呢,是1.7的,你用的JDK如果是1.8的话,它有的时候呢,它用的那个插件啊,会不太一样。可能我这里边没有啊,那就你就等这个你有网的时候,你去去联网的,让他去下载一下适合你这个JDK的啊,所以说还是有些个别情况会有一些这个差异。
我来说两句