Maven学习(一)

Maven的下载地址:http://maven.apache.org/download.cgihtml

1.下载安装Mavenjava

    下载apache-maven-3.3.3-bin.zip。Maven安装:web

    (1)前提是jdk已经安装和配置好了,测试:在黑窗口输入java -versionapache

    (2)解压Mavenapi

    (3)配置maven环境变量tomcat

        新建系统环境:M2_HOME-------->D:\maven\apache-maven-3.3.3eclipse

        在path中添加:;%M2_HOME%\binjsp

    (4)测试mave是否安装成功:在黑窗口输入 mvn -versionmaven

2.maven项目的结构ide

    (1)src/main/java 放源码

        src/main/resource  放配置文件

    (2)src/test/java 测试源码

        src/test/resource 测试须要的配置文件

    (3)pom.xml  项目须要的jar包依赖

        编译好的文件在target/classes下。

3.仓库

    maven项目须要的jar都是从仓库里面拿。默认从本地仓库里面找jar包。

        maven默认的本地仓库的位置C:\Users\Administrator\.m2\repository 存放jar包或者插件

        maven远程仓库的位置:https://mvnrepository.com/ 能够从远程仓库中找须要的dependency

                                            http://maven.aliyun.com/mvn/search

        远程仓库(中央仓库)是 Maven 官方提供的,可经过 http://search.maven.org/ 来访问。     

       关于配置Maven的镜像:

    参考:http://www.cnblogs.com/zengming/p/7786684.html

    通常是配置国内的远程仓库,可是在公司里面有的有本身的公司仓库,因此会配置公司仓库的镜像。

4.在eclipse中使用maven插件

    (1)三个文件:maven包、maven使用的仓库、配置文件。三个文件放在同一个目录下

                

    在apache-maven-3.3.3的conf/settings.xml中添加须要的仓库的位置:

            

    修改与apache-maven同目录下settings.xml文件,添加同上的仓库地址。

    (2)在eclipse中设置maven

            属性--->maven---->Installations 添加apache-maven-3.3.3的位置:D:\maven\apache-maven-3.3.3

            属性--->maven---->User settings 添加仓库配置文件的位置D:\maven\settings.xml。参考:

                                                                                                https://www.cnblogs.com/growthTree/p/6284831.html

        apache-maven本地仓库的配置以及在eclipse上的配置:

            能够参考:https://www.cnblogs.com/growthTree/p/6284831.html

             能够参考:https://blog.csdn.net/liu_shi_jun/article/details/78733633

             本地仓库中没有的jar包会自动从远程仓库中找jar包并放到本地仓库中来。可是实际项目中存在一种状况,就是本地Maven仓库中没有jar包,也没有自动从远程仓库中找jar包。解决参考:??

    (3)建立Maven项目

           建立一个Maven project,勾选上”Create a simple project (skip archetype selection)“(一个简单的Maven项目模板)

             在pom.xml文件中须要使用的依赖jar包:

                            

            在发布项目的时候scope是须要去掉的。从下面能够看到依赖的jar包之间的关系:

                        

    (4)若是查看maven项目中的源码?

            

    使用maven插件,在eclipse中能够自动的编译maven项目。apache-maven-3.3.3默认使用的远程仓库的位置:

                                

    maven依赖传递的概念:

        咱们的service项目须要依赖Spring-core包,而后这个Spring-core包会依赖Commons-logging,因此咱们的service项目中不只有Spring-core包,还有Commons-logging包,这就是依赖传递。

                    

        scope指明了依赖容许的范围是test包内有效,因此scope是对依赖传递的一个控制。scope能够为provided解决jar包冲突。好比下面的servlet-api和jsp-api,这两个包在tomcat中有,可是在install直接进行的时候也会产生这两个包,会产生冲突,因此应该将web项目中的这两个包的范围修改一下:

                            

        .。。。还有不少待改进的。

相关文章
相关标签/搜索