Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置

Maven配置及介绍

很多时候开发效率低下,大部分原因是IDE环境不熟悉、配置不会配置;因此在学习一项技能之前,有必要对基本的环境配置有所了解,正所谓磨刀不误砍柴工。这篇文章主要针对初次接触Maven,不熟悉配置的研究人员。
 以前开发Java Web工程时,需要导入很多依赖包,但是随着工程逐渐变大,所管理的包越来越多,有必要使用工具来管理这些包,这样不需要我们手动导入;Maven就是为了解决管理jar的问题。

Maven是一个采用纯Java编写的开源项目管理工具,它采用了一种被称之为 POM(Project Object Model)概念来管理项目,所有的项目配置信息都被定义在一个叫做pom.xml的文件中,通过该文件,Maven可以管理一个项目的整个生命周期,包括编译,构建,测试,发布,报告等。

1)下载Maven

http://maven.apache.org/download.cgi 官网下载
点击Download --我下载的是 Apache Maven 3.6.1版本的

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第1张图片
image.png
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第2张图片
image.png

下载到本地目录,然后解压即可


Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第3张图片
image.png

2)Maven基本配置
将maven目录下conf-->settings.xml文件拷贝到,C盘-->用户-->.m2文件夹下
settings里面就是配置maven工程的一些本地仓库地址(项目使用的某些jar下载并且安装到本机中),远程仓库(如果本机没有需要的jar,则从远程获取。)的配置等信息。

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第4张图片
image.png

3)maven在eclipse中的配置。首先打开eclipse开发工具,eclipse中的各种配置文件一般都是通过window窗口进行设置。打开导航工具栏上的window即可对工作空间进行设置。

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第5张图片
如何在eclipse中配置maven项目

4)打开window之后,可以看到很多功能的设置,新建window窗口、配置显示信息、打开window其他功能设置等。这里我们对maven地址配置,选择最后一个preferences选项
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第6张图片
如何在eclipse中配置maven项目

5)在打开的配置项页面中,可以输入maven关键字,快速定位到maven文件夹,在maven文件夹下找到User Settings,主要是配置用户设置。
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第7张图片
如何在eclipse中配置maven项目

6)在查找用户配置user settings的时候,也可以通过依次展开文件夹的方式,直接点击选择maven文件夹,在maven文件夹下就可以看到用户设置选项。
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第8张图片
image.png

7)点击user settings在用户配置界面中,有两个设置框,一个是Global Settings(全局配置信息)和User Settings(只针对这个工作空间进行设置)。根据自己的实际情况设置相应的settings文件。
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第9张图片
如何在eclipse中配置maven项目

maven的配置文件settings.xml存在于两个地方:

1.安装的地方:${M2_HOME}/conf/settings.xml

2.用户的目录:${user.home}/.m2/settings.xml

前者又被叫做全局配置,对操作系统的所有使用者生效;后者被称为用户配置,只对当前操作系统的使用者生效。如果两者都存在,它们的内容将被合并,并且用户范围的settings.xml会覆盖全局的settings.xml。

Maven安装后,用户目录下不会自动生成settings.xml,只有全局配置文件。如果需要创建用户范围的settings.xml,可以将安装路径下的settings复制到目录${user.home}/.m2/。Maven默认的settings.xml是一个包含了注释和例子的模板,可以快速的修改它来达到你的要求。

如下图eclipse中配置settings.xml的默认本地仓库路径已经自定义的本地仓库路径:settings.xml配置文件。
打开eclipse -> Window ->Preferences -> Maven,

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第10张图片
image

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第11张图片
image.png

注明
如果你选择全局配置文件,那么你就选择您maven下载放在哪个文件夹对应的settings.xml
如果你选择用户配置文件,那么你就选择您默认C盘/user/.m2文件夹下的settings.xml
全局配置一旦更改,所有的用户都会受到影响,而且如果maven进行升级,所有的配置都会被清除,所以要提前复制和备份${M2_HOME}/conf/settings.xml文件,一般情况下不推荐配置全局的settings.xml。
8)配置环境变量

配置maven环境:我的电脑->属性->高级系统设置->新建环境变量:MAVEN_HOME , 变量值为刚解压的maven路径,我的是:E:\Maven\apache-maven-3.6.1-bin\apache-maven-3.6.1。再在Path变量中加上:%MAVEN_HOME%\bin;

注意:配置Maven时,环境变量里面一定要存在JAVA_HOME,即要配置好JDk的环境。
9)测试看看是否成功的配置环境
4.windows+r键输入cmd,打开dos命令,输入mvn -v 进行测试,如出现下图样,则配置成功。

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第12张图片
image.png

用编译器打开下载解压位置的settings.xml 这个文件
在文件中可以看到localRepository配置的就是本地仓库,本地仓库地址的目录最好是全英文格式,不要包含汉字空格等其他特殊字符。也可以修改仓库地址

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第13张图片
image.png

mirror表示的是访问镜像。如果本地仓库没有项目所需要的jar包,就会通过这里的mirror配置的url地址进行从远程仓库获取需要的jar,同事将这个jar添加到本地目录中,当再次使用的时候,就会直接从本地仓库中直接获取。


Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第14张图片
image.png

修改后的settings.xml文件 复制到你的本地仓库url中
开启Maven的视图, 检查是否已经配置了镜像库

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第15张图片
image.png
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第16张图片
image.png
下载基本的文件

在命令行中输入mvn help:system 看到如下说明完成:


Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第17张图片
image.png

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第18张图片
image.png

如果出现以上错误

问题解决

settings.xml配置详解







          
作用:该值表示构建系统本地仓库的路径。
其默认值:~/.m2/repository。
          E:\SSM\maven\LocalWarehouse\.m2\repository
  
作用:表示maven是否需要和用户交互以获得输入。
如果maven需要和用户交互以获得输入,则设置成true,反之则应为false。默认为true。
  
作用:表示maven是否需要在离线模式下运行。
如果构建系统需要在离线模式下运行,则为true,默认为false。
当由于网络设置原因或者安全因素,构建服务器不能连接远程仓库的时候,该配置就十分有用。
  
作用:当插件的组织id(groupId)没有显式提供时,供搜寻插件组织Id(groupId)的列表。
该元素包含一个pluginGroup元素列表,每个子元素包含了一个组织Id(groupId)。
当我们使用某个插件,并且没有在命令行为其提供组织Id(groupId)的时候,Maven就会使用该列表。默认情况下该列表包含了org.apache.maven.plugins和org.codehaus.mojo。
  
  
    
    com.your.plugins
    -->
  

  
  
    
  
作用:一般,仓库的下载和部署是在pom.xml文件中的repositories和distributionManagement元素中定义的。然而,一般类似用户名、密码(有些仓库访问是需要安全认证的)等信息不应该在pom.xml文件中配置,这些信息可以配置在settings.xml中。
  
  
    

    
  
作用:为仓库列表配置的下载镜像列表。
  
  
    

       
           alimaven 
           aliyun maven 
           http://maven.aliyun.com/nexus/content/groups/public/ 
           central         
         

  

  
作用:根据环境参数来调整构建配置的列表。
settings.xml中的profile元素是pom.xml中profile元素的裁剪版本。
它包含了id、activation、repositories、pluginRepositories和 properties元素。这里的profile元素只包含这五个子元素是因为这里只关心构建系统这个整体(这正是settings.xml文件的角色定位),而非单独的项目对象模型设置。如果一个settings.xml中的profile被激活,它的值会覆盖任何其它定义在pom.xml中带有相同id的profile。
  
    

    

      
        /path/to/tomcat/instance
      
    
    -->
  
作用:手动激活profiles的列表,按照profile被应用的顺序定义activeProfile。
该元素包含了一组activeProfile元素,每个activeProfile都含有一个profile id。任何在activeProfile中定义的profile id,不论环境设置如何,其对应的 profile都会被激活。如果没有匹配的profile,则什么都不会发生。
例如,env-test是一个activeProfile,则在pom.xml(或者profile.xml)中对应id的profile会被激活。如果运行过程中找不到这样一个profile,Maven则会像往常一样运行。
  
    alwaysActiveProfile
    anotherAlwaysActiveProfile
  
  -->


Servers


  
    
    
      
      server001
      
      my_login
      
      my_password
      
      ${usr.home}/.ssh/id_dsa
      
      some_passphrase
      
      664
      
      775
    

Mirrors

添加国内镜像源
添加标签下,添加国内镜像源,这样下载jar包速度很快。默认的中央仓库有时候甚至连接不通。一般使用阿里云镜像库即可。这里我就都加上了,Maven会默认从这几个开始下载,没有的话就会去中央仓库了。


  
    
    
      
      planetmirror.com
      
      PlanetMirror Australia
      
      http://downloads.planetmirror.com/pub/maven2
      
      central
    


eg:


    alimaven
    central
    aliyun maven
    http://maven.aliyun.com/nexus/content/repositories/central/




    repo1
    central
    Human Readable Name for this Mirror.
    http://repo1.maven.org/maven2/




    repo2
    central
    Human Readable Name for this Mirror.
    http://repo2.maven.org/maven2/




    huaweicloud

    *

    https://mirrors.huaweicloud.com/repository/maven/

   

  
使用maven镜像

综述
用maven做项目,最郁闷的莫过于某些依赖库下载不了。被墙了,你懂的。使用maven镜像仓库及其重要,特别是国内的镜像,可以有效缓解被墙疼痛。

常用的镜像
国外镜像
ibiblio.org

  
     ibiblio  
     central  
     ibiblio Mirror of http://repo1.maven.org/maven2/  
     http://mirrors.ibiblio.org/pub/mirrors/maven2/  
  

jboss

  
     jboss-public-repository-group  
     central  
     JBoss Public Repository Group  
     http://repository.jboss.org/nexus/content/groups/public  

repo2


  repo2
  central
  Human Readable Name for this Mirror.
  http://repo2.maven.org/maven2/

uk.maven.org


  ui
  central
  Human Readable Name for this Mirror.
 http://uk.maven.org/maven2/

国内镜像

oschina.net


    nexus-osc
    *
    Nexus osc
    http://maven.oschina.net/content/groups/public/

net.cn


    net-cn
    central
    Human Readable Name for this Mirror.
    http://maven.net.cn/content/groups/public/   
 
使用镜像

下文以oschina.net的镜像为例子.

1.Maven 的安装目录下的 conf 文件下有个settings.xml文件,编辑该文件

2.在中插入:


    nexus-osc
    *
    Nexus osc
    http://maven.oschina.net/content/groups/public/

3.这里是配置 Maven 的 mirror 地址指向OSChina 的 Maven 镜像地址。 在执行 Maven 命令的时候, Maven 还需要安装一些插件包,这些插件包的下载地址也让其指向 oschina.net 的 Maven 地址。在中插入:


    jdk-1.4
    
    1.4
    
    
        
            nexus
            local private nexus
            http://maven.oschina.net/content/groups/public/
            
                true
            
            
                false
            
        
    
    
        
            nexus
            local private nexus
            http://maven.oschina.net/content/groups/public/
            
                true
            
            
                false
            
        
    

Proxies

作用:用来配置不同的代理。


    
    
      
      myproxy
      
      true
      
      http
      
      proxy.somewhere.com
      
      8080
      
      proxyuser
      
      somepassword
      
      *.google.com|ibiblio.org
    
  

Profiles


    
      
      test
      
      
      
      
      
      
      
      
    
  
eg: 修改使得jdk默认值是1.8
     
    JDK-1.8       
           
        true       
        1.8       
           
           
        1.8       
        1.8       
        1.8       
           

Activation


  
  false
  
  1.5
  
  
    
    Windows XP
    
    Windows
    
    x86
    
    5.1.2600
  
  
  
    
    mavenVersion
    
    2.0.3
  
  
  
    
    ${basedir}/file2.properties
    
    ${basedir}/file1.properties
  

注:在maven工程的pom.xml所在目录下执行mvn help:active-profiles命令可以查看中央仓储的profile是否在工程中生效

Repositories



  
  
    
    codehausSnapshots
    
    Codehaus Snapshots
    
    
      
      false
      
      always
      
      warn
    
    
    
      
      
      
    
    
    http://snapshots.maven.codehaus.org/maven2
    
    default
  

pluginRepositories

作用:发现插件的远程仓库列表。
和repository类似,只是repository是管理jar包依赖的仓库,pluginRepositories则是管理插件的仓库。
maven插件是一种特殊类型的构件。由于这个原因,插件仓库独立于其它仓库。pluginRepositories元素的结构和repositories元素的结构类似。每个pluginRepository元素指定一个Maven可以用来寻找新插件的远程地址。


  
  
    
      
      
      
    
    
      
      
      
    
    
    
    
    
  


最后修改完源码:







    
    
   E:\SSM\maven\LocalWarehouse\.m2\repository
    

    

    
    
        
    

    
    
        
    

    
    
        

        
    

    
    
        

        
            alimaven-central
            central
            aliyun maven
            http://maven.aliyun.com/nexus/content/groups/public/
        
        
    nexus-osc
    *
    Nexus osc
    http://maven.oschina.net/content/groups/public/
     

        

    

    
    
        
        
            jdk18
            
                1.8
                true
            
            
                1.8
                1.8
                1.8
            
            
           
                    nexus
                    local private nexus
                    http://maven.oschina.net/content/groups/public/
                    
                        true
                    
                    
                        false
                    
                
            
            
                
                    nexus
                    local private nexus
                    http://maven.oschina.net/content/groups/public/
                    
                        true
                    
                    
                        false
                    
                
            
        

        
    

    


修改增加本地仓库的url 和镜像的地址后 win+R cmd 运行mvn help:system


Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第19张图片
image.png
第二步:回到eclipse中点击window再点击preferences
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第20张图片
image

环境就算搞定了。接下来要应用Maven来打包Project为大家服务的。
在cmd中的命令:
a. mvn eclipse:clean 清除Project中以前的编译的东西,重新再来
b. mvn eclipse:eclipse 开始编译Maven的Project
在Myeclipse中的操作:
a. 选中Maven Project 右击 在Run As中选择Maven clean
b. 在Myeclipse中,Project—Clean 开始编译
c. 选中Maven Project 右击 在Run As中选择Maven install
执行完这几步,如果没发生异常,会在project里生成一个target文件夹,这个文件夹里的东西,就是Maven打包发布的东西。


在Eclipse上安装maven

打开Eclipse点击window>prferences之后会弹出

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第21张图片
image
Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第22张图片
image

点击确定之后会出现:

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第23张图片
image

点击finish之后:

Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置_第24张图片
image

这个时候你就把maven装在你的Eclipse中了


接下来在eclipse中配置使用

1:此处修改为自己解压的Maven目录

2:勾选Override,修改为自己目录下的settings.xml目录

3:修改为自己的本地仓库地址,一般会自动识别。

4.设置eclipse的Maven插件引入依赖jar包后自动下载并关联相应的源码
其实 eclipse 的 Maven 插件就提供了这个功能,但是可能有许多开发人员没关注这个功能,所以这个分享给那些不太清楚这个功能的同学,配置很简单,只需要勾选windows-Preferences-Maven- Download Artifact Sources这个选项就可以了 。


你可能感兴趣的:(Maven下载,环境变量配置,Eclipse安装及settings.xml文件的配置)