Spring之 Maven(1)

maven细节较多,就不一一把笔记的内容照搬一遍,也没新意。就随便勾勒下重点回顾下吧

 

1.简介

什么是maven?maven翻译过来是专家的意思,它是一个项目管理构建工具,

用它来帮助我们对java项目的管理。就像我们之前,自己导各种jar包,那时候就是我们自己来管理整个项目,

面临的很多问题,例如占用内存,版本冲突等问题。因此,引入了Maven,

Maven主要有两个功能(一定要记住的)

1.项目构建

2.依赖管理

 

2.Maven项目的构建过程

最终生成的大部分文件在target目录内

上图中部分阶段对应命令如下:

清理阶段对应maven的命令是clean,清理输出的class文件

编译阶段对应maven的命令是compile,将java代码编译成class文件。

打包阶段对应maven的命令是package,java工程可以打成jar包,web包可以打成war包

2.1 什么是依赖管理?

什么是依赖?一个java项目可能要使用一些第三方的jar包才可以运行,那么我们说这个java项目依赖了这些第三方的jar包。

举个例子:C3P0的jar包。

什么是依赖管理?就是对项目所有依赖的jar包进行规范化管理。

2.2 maven项目的依赖管理

maven项目管理所依赖的jar包不需要手动向工程添加jar包,只需要在pom.xml(maven工程的配置文件)添加jar包的坐标,自动从maven仓库中下载jar包、运行,如下图:

使用maven依赖管理添加jar的好处:

1、通过pom.xml文件对jar包的版本进行统一管理,可避免版本冲突。

2、maven团队维护了一个非常全的maven仓库,里边包括了当前使用的jar包,maven工程可以自动从maven仓库下载jar包,非常方便。

三、安装下载

3.1 下载

从该网站 http://maven.apache.org/download.cgi 下载 

l 解压

将maven解压到一个不含有中文和空格的目录中。

l 目录简介

     bin目录 mvn.bat (以run方式运行项目)、 mvnDebug.bat(以debug方式运行项目 )

     boot目录 maven运行需要类加载器

     conf目录 settings.xml 整个maven工具核心配置文件

     lib目录 maven运行依赖jar包

3.2 环境变量配置

略过

四、依赖的作用范围

 compile:编译范围,指A在编译时依赖B,此范围为默认依赖范围。编译范围的依赖会用在编译、测试、运行,由于运行时需要所以编译范围的依赖会被打包。

 provided:provided依赖在编译和测试时需要,在运行时不需要,比如:servlet api被tomcat容器提供。provided依赖只有在当JDK或者一个容器已提供该依赖之后才能使用(否则会报错),

 runtime:runtime依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如:jdbc的驱动包。由于运行时需要所以runtime范围的依赖会被打包。

 test:test范围依赖 在编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用,比如:junit。由于运行时不需要所以test范围依赖不会被打包。

 

五、注意的几个问题

1.当你打开另一个项目,做的第一件事情是修改maven配置。在moudleseting设置

2.一定要在网络良好的情况下使用,如果网络不好,会下载不完全.lastUpdatated

3.解决jdk1.5的问题

在maven安装下的conf目录下的setting.xml文件夹内增加如下代码

 <profile>
            <id>jdk-1.8</id>
            <activation>
                <activeByDefault>true</activeByDefault>
                <jdk>1.8</jdk>
            </activation>
            <properties>
                <maven.compiler.source>1.8</maven.compiler.source>
                <maven.compiler.target>1.8</maven.compiler.target>
                <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
            </properties>
        </profile>

或者配置pom文件里的properties标签

<properties>
    <!--key是我们的自定义标签-->
    <!--spring.version=5.1.0.RELEASE-->
    <spring.version>5.1.0.RELEASE</spring.version>
    <mysql.version>5.1.14</mysql.version>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>

</properties>

 4.当右边maven报红时,有两个解决方法,一是看有没有拼写错误,可以去本地仓库查看。二是看本地仓库是否加载完全。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值