创建项目
手动按照maven层级建好文件夹,并写上java,测试代码和pom文件
构建项目
在dos窗口中执行如下命令
compile编译
当前maven仓库中什么都没有。
在pom所在层级下,执行:
mvn compile
就开始显示下面这些,就是在!!下载:执行compile功能对应的插件,没有插件做不了这个功能。!!
这时候看maven本地仓库,就有东西了,就是他从配置的中央仓库(我们配置的是阿里云)下载的东西
显示的下载的插件:
resource插件
compile插件
在本地仓库查找:
路径下显示的就是下载的插件
最终执行成功靠的是jar包完成的:
最后,执行compile:
主要就是第一次需要下插件耽误时间,再编译一次,就很快了:
然后再看项目目录,多一个target:
里面classes里是编译后的东西:
clean
第一次执行同样先下载,然后执行
完成后target目录消失了
关于target目录
就是存放编译生成物的,clean就是负责给target删掉的。
test
test-classes测试代码编译后生成的字节码文件夹
package
mvn package
结束生成个jar包:只打包源程序的
过程:
先编译,再测试,然后再打包,又自动把这几个命令执行了一遍。最后再打包。——为了正确性
install(安装)
作用:把打包的东西放到maven本地仓库里。
过程:还是会把之前的编译打包再执行一遍,保证正确性。
执行前:
结束后:
本地仓库如下路径下,生成了刚刚package生成的jar包。
!!!为什么放在com-itheima下:
!!因为最初定义的groupid是com-itheima
详细路径:
!!总结
maven项目构建说实在就是把日常我们做的工作做成命令,一键执行就行。
为什么这么做?idea不是都做完了吗?
!!首先idea没有打包!!,!!其次idea编译完只是在我们自己的计算机上做的!!,!!我们的程序到linux服务器上传上去源代码以后要用他的环境去编译!!,那时候就得靠这些命令。
所以maven为啥是个项目构建工具,就是做这些的。