Maven的Why and What(maven1)

版权声明: https://blog.csdn.net/qq_39769369/article/details/83986465

                                       Maven的Why  and  What

一、Why-------为什么会需要maven

①一个项目既是一个工程

        如果一个项目非常庞大,就不适合继续用package来划分模块功能,最好是每个模块对应一个工程,便于分工协作

        借助maven能够将一个项目拆分为过个工程项目 

②项目中的jar包必须手动“复制”,“粘贴”到WEB-INFO/lib

        带来问题:同样 的jar包重复出现在不同的项目工程中,一方面浪费存储空间,比较臃肿

        借助Maven,可以将jar包仅仅保存在“仓库"中,有需要,使用工程“引用”这个文件接口,并不要真的把jar包赋值过来

③jar包需要自己下载准备好

        不同技术的官网提供jar包的下载的形式是不同的

        有些技术的官网就是通过Maven或是SVN等专门的工具来提供下载的

        如果以不规范的方式下载jar包,那么其中的内容也是不规范的。

        借助Maven我们可以以一种能规范的方式下载jar包,因为所有知名的第三方框架或第三方工具的jar包以及按照统一的规范存放在Maven的中央仓库,内容很可靠

④一个jar包还需依赖要其他jar包,手动加入到项目中

        文件上传:用到FileUpload组件---IO组件。commons-fileupload.jar依赖commons.jar包

        如果所有jar包之间的依赖关系都要去了解,工作量是非常大的,增加学习成本

二、What-----Maven是什么

①Maven是一款服务于Java平台的自动化构建工具。

    Make->Ant->Maven ->Gradle

②构建:

    【1】概念:以“Java源文件”“框架配置文件”“JSP”“HTML” “图片”等资源为“原材料”去“生产”一个可以运行项目的过程。

  •  编译

  • 部署

  • 搭建

   【2】编译:.Java文件->编译->.class文件->JVM去执行

   【3】部署:一个BS项目最终运行并不是动态Web工程的本身,而是这个动态Web工程“编译结果”

            生食物->处理->熟食物-----最后才能吃

            动态Web工程->编译,部署->编译结果-----最后才能在服务器运行

综上所述:构建就是以我们写的Java代码,框架配置文件,国际化等其他资源文件,jsp页面和静态资源作为“原材料”,去“生产出”一个可以运行的项目过程。

Tips:运行时环境

其实是一组jar包的引用,并没有把jar包本身复制到工程中,所以并不是目录

工程目录src----最终编译为class-----类路径

开发过程中所有路径的 不能以工程目录为标准,是以编译结果为标准!!!,工程只是一个开发环境

③构建过程中的各个环节-----eclipse和myeclipse将构建过程的环节执行的差不多了,所以我们对构建没有太大的感觉

        【1】清理 :将以前编译旧的class字节码文件删除,为下次编译做准备

        【2】编译 :将Java文件编译成class字节码文件

        【3】测试 :自动的测试--将junit程序准备好,maven会自动调用juint程序自动测试。 

        【4】报告  :测试程序执行的结果

        【5】打包 :动态web打成war包,Java工程打成jar包

        【6】安装  :maven一个特定的概念-----将打包得到的文件复制到“仓库”的制定位置

        【7】部署 :将动态web工程生成的war包复制到servlet容器指定的目录下,使其可以运行

④自动化构建

以上通过观看谷粒学院学习视频所记录的笔记

谷粒学院学习官网:http://www.gulixueyuan.com

猜你喜欢

转载自blog.csdn.net/qq_39769369/article/details/83986465