框架 day46 Maven

1     maven介绍


    Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具

    Maven主要功能

       1.方便的发布项目信息(更易于项目周期完成:清理、编译、测试、打包、部署)

       2.在多个项目中共享JAR(项目与项目之间依赖,CRM 需要使用SSH的所有jar,就说CRM依赖SSH)

              通过配置文件确定使用的jar,不需要手动的导入jar。

    Maven是一个项目管理工具,它包含:

•     一个项目对象模型 (Project Object Model) 。创建的都是maven项目。每一个maven项目根目录下都有一个配置文件pom.xml

•     一组标准集合(配置信息比较完善)

•     一个项目生命周期(Project Lifecycle)

•     清理、编译、测试、报告、打包、部署

•     一个依赖管理系统(Dependency Management System) ,解决项目与项目(jar包)之间依赖

    约定优于配置的思想

maven规定以什么目录结构存放内容、规定输出到什么位置等。

框架 day46 Maven_第1张图片

    Maven提供相应的插件完成项目周期的流程。maven的插件以jar项目体现。

       maven使用插件 和 依赖的项目(jar) 本地默认都没有,但maven不需要我们下载,在使用maven时将自动的下载。maven关键:需要网络。且只需要下载一次。

 

2     maven安装【掌握】

2.1   下载

    网址:http://maven.apache.org/download.cgi      

    版本:3.0.4       

2.2   安装

    解压:apache-maven-3.0.4-bin.zip

框架 day46 Maven_第2张图片      

    目录结构

 框架 day46 Maven_第3张图片       


2.3   配置环境变量

    配置系统环境变量MAVEN_HOME  (maven_home)

  框架 day46 Maven_第4张图片      

    配置系统环境变量path  (建议:path都是小写) , 注意:使用分号分隔

 框架 day46 Maven_第5张图片       

2.4 测试

    方式1:cmd> mvn --version

    方式2:cmd> mvn -v

框架 day46 Maven_第6张图片  

 

3     配置本地仓库【掌握】


    步骤一:本地仓库:maven上网下载所有jar存放的位置成为本地仓库。

    步骤二:解压本地仓库


 框架 day46 Maven_第7张图片       


    步骤三:配置文件:%maven_home%/conf/settings.xml

框架 day46 Maven_第8张图片        


    步骤四:修改配置,配置本地仓库

       


4     maven快速入门(了解)

4.1   名词介绍


    Project:任何您想build(构建)的事物,Maven都可以认为它们是工程(项目)。这些工程被定义为工程对象模型(POM,Poject Object Model)。一个工程可以依赖其它的工程;一个工程也可以由多个子工程构成。

    依赖:一个项目需要使用另一个项目

    项目可以被拆分多个模块

    POM:POM(pom.xml)是Maven的核心文件,它是指示Maven如何工作的元数据文件,类似于Ant中的build.xml文件。POM文件位于每个工程的根目录中。 maven取代ant

    GroupId:groupId是一个工程的在全局中唯一的标识符,一般地,它就是工程名。groupId有利于使用一个完全的包名,将一个工程从其它有类似名称的工程里区别出来。

    组,要求:全球唯一,一般情况使用 域名倒写(包名

    Artifact:artifact 是工程将要产生或需要使用的文件,它可以是jar文件,源文件,二进制文件,war文件,甚至是pom文件。每个artifact都由groupId和 artifactId组合的标识符唯一识别。需要被使用(依赖)的artifact都要放在仓库(见Repository)中,否则Maven无法找到 (识别)它们。

    标识,一般情况项目名称

    Dependency:为了能够build或运行,一个典型的Java工程会依赖其它的包。在Maven中,这些被依赖的包就被称为dependency。dependency一般是其它工程的artifact。

    Plug-in:Maven是由插件组织的,它的每一个功能都是由插件提供的。插件提供goal(类似于Ant中的target),并根据在POM中找到的元数据去完成工作。主要的Maven插件要是由Java写成的,但它也支持用Beanshell或Ant脚本写成的插件。

    Repository:仓库。

 

4.2   创建maven java项目


    骨架:maven规定项目的结构,不同项目需要不同的骨架。

mvn archetype:create -DgroupId=com.itheima.maven.quickstart -DartifactId=simple -DarchetypeArtifactId=maven-archetype-quickstart


    注意:使用名称创建项目,必须上网下载一个小文件

   

没上网可能会卡在这里↑     


       上网之后的效果↓

        

 

4.2.1       mavenjava项目结构【掌握】


       pom.xml                             核心配置,项目根下

       src/main/java                       java源码目录

       src/main/resources                java配置文件目录

       src/test/java                          测试源码目录

       src/test/resources                  测试配置目录

       target                                  输出目录


4.3   创建 maven web项目

mvn archetype:create -DgroupId=com.itheima.maven.quickstart -DartifactId=myWebApp -DarchetypeArtifactId=maven-archetype-webapp -Dversion=0.0.1-snapshot

框架 day46 Maven_第9张图片


4.3.1       mavenweb项目结构【掌握】


pom.xml                             核心配置

src/main/java                       java源码

src/main/resources                java配置

src/main/webapp                  myeclipse web项目中 WebRoot目录

       |--WEB-INF

              |--web.xml

src/test                                测试

target                                  输出目录


4.4   命令操作


    清理:clean                 --删除target目录

    编译:compile             --src/main/java目录java源码编译生成class (target目录下)

    测试:test                    --src/test/java 目录编译

    打包:package             --生成压缩文件:java项目#jar包;web项目#war包 (压缩格式ZIP)

    安装:install                --将压缩文件上传到本地仓库

    部署|发布:deploy              --将压缩文件上传私服

 

    命令格式#  cmd> mvn  命令

        

    注意:使用命令时,必须在maven根目录下,及可以看到pom.xml


    安装位置:

框架 day46 Maven_第10张图片    

    

    完整生命周期,当执行生命周期后面命令时,前面步骤的命令自动执行

 框架 day46 Maven_第11张图片       


4.5   其他命令

•     转换Eclipse工程 (在pom.xml目录执行)

  mvn eclipse:eclipse

  mvn eclipse:clean  //清除Eclipse设置信息

•     转换成IDEA 工程(在pom.xml目录执行)

mvn idea:idea

mvn idea:clean //清除idea设置信息


 clean前后eclipse目录变化

框架 day46 Maven_第12张图片


5  myeclipse或eclipse使用Maven插件


5.1   插件安装(了解)

    高版本的myeclipse或eclipse 内置maven插件,建议:使用高版本(myeclipse 10.0)

    低版本eclipse插件安装

    安装eclipse ,将“eclipse-3.7  32位.zip”解压   

    安装插件

框架 day46 Maven_第13张图片        

 

5.2   myeclipsemaven配置【掌握】

5.2.1       配置位置

window→Preferences搜索maven

    eclipse        

    myeclipse      

5.2.2       取消索引下载

 框架 day46 Maven_第14张图片

5.2.3       安装自定义maven

    步骤一:选择   Installations     

    步骤二:选择add添加自己的maven安装路径

框架 day46 Maven_第15张图片        

    步骤三:点击应用 Apply 保存设置

      

5.2.4       配置maven

    步骤一:选择 User Settings         

    步骤二:选择自定义settings.xml 文件

       myeclipse默认配置文件位置:C:\Users\liangtong\.m2\settings.xml(.cache为索引下载位置)

框架 day46 Maven_第16张图片

    步骤三:应用 保存设置

 

5.2.5       浏览本地仓库

    步骤一: window/show view/other 搜索maven/ ,打开 “maven repositories” --maven仓库管理视图      

    步骤二:显示本地仓库

 框架 day46 Maven_第17张图片       

    步骤三:重写构建索引,右键本地方库选择重新构建索引

框架 day46 Maven_第18张图片        

再点击箭头展开就可以 查看仓库内容了


5.3   maven项目创建

5.3.1       mavenjava项目

    步骤一:选择“maven project” ,如果右键新建没有,通过other获得

        

    步骤二:选择项目位置,默认不变

框架 day46 Maven_第19张图片        

    步骤三:选择骨架quickstart

框架 day46 Maven_第20张图片        

    步骤四:设置项目参数

 框架 day46 Maven_第21张图片       

    创建后的结果:需要手动创建源码目录

 框架 day46 Maven_第22张图片

 

5.3.2       mavenweb项目

    步骤一:创建maven项目,同上

    步骤二:选择路径,同上

    步骤三:选择骨架webapp

        

    步骤四:项目参数,同上      

    创建结果

框架 day46 Maven_第23张图片        

 

5.3.3       maven自定义项目【掌握】


5.3.3.1    java项目

    步骤一:选择maven project,同上

    步骤二:创建一个简单项目(跳过骨架选择)

框架 day46 Maven_第24张图片        

    步骤三:设置项目参数,创建java项目

框架 day46 Maven_第25张图片            

    创建java项目结果

框架 day46 Maven_第26张图片       

 

5.3.3.2    web项目

    步骤一:同上

    步骤二:同上

    步骤三:设置项目参数:把packaging 改为war其他同上

    创建web项目结果:WEB-INF没有web.xml和index.jsp需手动导入

        

5.3.3.3    maven项目

    项目参数:把packaging 改为porm其他同上

    创建结果

 maven项目一般没用,在开发中将一个项目拆分成多个项,就需要使用maven项目(pom项目)将其他子项目进行整合。


5.4   myeclipsemaven操作


右键项目选择Run As

框架 day46 Maven_第27张图片


6--9 都是快捷方式

       9测试

       8安装

       7关联源码

       6清理

5 maven build...   执行maven命令,等效 mvn

        

4 maven build  5快速的操作

       如果没有操作过,与5相同

       如果操作一次,将直接执行

       如果操作多次,将提供选择框

    myeclipse运行web项目

命令Goals:  tomcat:run

        

6     maven应用详情


6.1   仓库

    分类:本地仓库、第三方仓库、中央仓库

6.1.1       本地仓库

    Maven会将工程中依赖的构件(Jar包)从远程下载到本机一个目录下管理

       通常默认在$user.home/.m2/repository下。        

       例如:C:\Users\liangtong\.m2\repository

    自Maven2以后,构件的存储方式通常是groupId/artifactId/version/*.jar

       例如:D:\java\maven\repository\org\springframework\spring-core\3.2.0.RELEASE

    修改本地库位置:在$MAVEN_HOME/conf/setting.xml文件的

    工程(项目)使用jar包时,优先从本地仓库查询

 

6.1.2       第三方仓库

    第三方仓库,又称为内部中心仓库,也称为私服。

    私服:一般是由公司自己设立的,只为本公司内部共享使用。它既可以作为公司内部构件协作和存档,也可作为公用类库镜像缓存,减少在外部访问和下载的频率。(使用私服为了减少对中央仓库的访问)

       私服可以使用的是局域网,中央仓库必须使用外网。

    私服一般都是有第三方提供,常见私服服务器: Nexus和Artifactory

    私服又可以连接其他公司搭建的私服,例如Jboss中心库、Spring中心库,以随时获得最新版本的第三方构件。      

            例:  从3.0.2 开始spring提供spring私服(spring中心库),不再提供依赖zip包

    注意:连接私服,需要单独配置。如果没有配置私服,默认不使用。

 

6.1.3       中央仓库

    Maven内置了远程公用仓库:http://repo1.maven.org/maven2

 框架 day46 Maven_第28张图片       

    这个公共仓库是由Maven自己维护,里面有大量的常用类库,并包含了世界上大部分流行的开源项目构件。目前是以java为主。

    工程依赖的jar包如果本地仓库没有,默认从中央仓库下载

 框架 day46 Maven_第29张图片

 

6.2   POM全景图(了解)

    maven项目都具有pom.xml核心配置文件,POM全景图就是对pom.xml进行整体的描述。

6.2.1       pom关系

框架 day46 Maven_第30张图片 

    1POM Relationships 关系

     Coordinates 坐标:在仓库中唯一标识项目位置三个参数

     

      标识

       版本号

•     示例:仓库\cn\itcast\maven\demojava\0.0.1-SNAPSHOT

•     Aggregation 聚合(多模块): 将项目分解为多个不同模块

   模块拆分:crm_staff、crm_classes、crm_coursetype、...等

   层次拆分:crm_domain(jar)、crm_dao(jar)、crm_service(jar)、crm_web(war)、crm(pom)等

   终端拆分:xxx_web、xxx_wap 等

•     Inheritance 继承: 项目之间继承,实现POM复用。在pom项目共享坐标,共享工具等

•     dependencyManagement:依赖管理,用于版本锁定

•     Dependencies 依赖:一个项目依赖在编译或运行等阶段另一个项目

    在maven通过坐标解决依赖关系。

 

6.2.2       项目信息

 框架 day46 Maven_第31张图片

    2Project Information 项目信息

•     name :项目名称

•     desciption:项目描述

•     url : 访问路径(官方URL)

•     inceptionYear : 项目开始时间

•     licenses:许可

•     developers:开发人员

•     contributors:捐赠者

•     organization:组织或机构名称


6.2.3       构建设置

  

    Build settings  构建配置

•     properties :配置属性。

  例如:配置依赖项目版本等

•     build :构建项目需要配置。

  例如:源码的位置,字节码位置等

•     packaging :打包方式

   jar java项目压缩包

   war web项目压缩包(tomcat可以自动解压)

    pom maven项目,用于多个maven项目的继承

    ear ejb项目

•     reporting :报表

 

6.2.4       构建环境


 框架 day46 Maven_第32张图片

    Build Environment 构建环境

•     environment information 环境信息

  issueManagement 问题管理

 mailingLists 邮件列表

 ciManagement CI管理 (Continuous Integration) 持续集成,自动完成软件代码的编译和测试过程

    Hudson是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控程序重复的工作

    scm :供应链管理(Supply chain management ) 一种集成的管理思想和方法

•     maven environment maven环境

    prerequisites 使用前提

   repositories 仓库

  pluginsRepositories 插件仓库

   distributionManagement 用于配置分发管理,配置相应的产品发布信息,主要用于发布,在执行mvn deploy后表示要发布的位置(将本地仓库内容 发布到私服)

  profiles 配置多个 profile,自定义配置文件,需要激活(activation)

 

6.2.5       有效POM

    有效POM:管理项目时,最终使用的POM

•     包括:超级POM 和 自定义POM

•     超级POM:maven 提供的pom.xml (特定的内容) ,一般内置在maven中。

•     自定义POM:maven项目自己编写的pom.xml

    eclipse的 pom.xml打开方式:Open With→Maven POM Editot

框架 day46 Maven_第33张图片


6.3   依赖

    maven通过坐标描述 项目之间的依赖关系

6.3.1       获得坐标

    方式1:使用网站搜索

       步骤一:百度搜索关键字“maven repository”  打开网站:http://mvnrepository.com/
       步骤二:输入关键字查询获得需要内容,确定需要版本

              http://mvnrepository.com/artifact/org.apache.struts/struts2-core/2.3.15.3

       步骤三:获得坐标

    框架 day46 Maven_第34张图片           


       org.apache.struts
       struts2-core
       2.3.15.3

    方式2:使用本地仓库,通过myeclipse获得坐标

       步骤一:添加依赖,pom.xml文件中,右键

               

       步骤二:获得坐标

框架 day46 Maven_第35张图片               


6.3.2       依赖(坐标)的常见配置

模板代码


      ……
      ……
      ……
      ……
      ……
      ……
      ……
      ……
      

    groupId、artifactId、version是依赖的基本坐标,缺一不可。

    type:依赖的类型,

•     默认为jar,表示依赖的jar包。

•     注意:pom.lastUpdated 使用最后更新描述信息,占位符作用。

    optional:标记依赖是否可选。默认值false

•     A->B->C,那么当A依赖于C时就可以设为可选。

    exclusions:排除传递依赖,解决jar冲突问题。

•     例如:spring bean 和 struts2 spring plugin

    scope:依赖范围

•     compile:编译范围,默认scope,在classpath中存在

•     provided:已提供范围,比如容器提供ServletAPI

•     runtime:运行时范围,编译不需要,接口与实现分离

•     test:测试范围,单元测试环境需要

•     system:系统范围,自定义构件,指定systemPath


6.3.2.1    依赖范围:


     框架 day46 Maven_第36张图片   

       compile,默认值,表示编译、测试和运行都需要当前jar。

       test,表示测试时需要使用当前jar。例如:junit 。此处不写也不报错。

       runtime,表示测试和运行时需要当前jar,编译时不用。例如:JDBC驱动。此处不写也不报错。

       provided,表示编译和测试时使用当前jar,运行时不使用。例如:servlet-api、jsp-api等。【必须填写】

              注意:maven默认不使用任何jar,如果需要必须手动导入所有jar包。

              1.开发阶段(myeclipse) -- myeclipse提供需要的jar包

              2.运行阶段(tomcat)-- 运行时有tomcat提供               

              如果使用maven开发,需要手动的导入 servlet和jsp的jar包,此时如果没有设置provided,当前web项目下和tomcat/lib目录下,各有一组jar,在运行时将抛异常。


6.3.2.2    排除依赖(依赖传递)


    例如:spring bean 和 struts2 spring plugin

    框架 day46 Maven_第37张图片     

    maven默认配置在前面的优先使用

 框架 day46 Maven_第38张图片       


    即使struts2-spring-plugin 配置在前面,也需要使用3.2.0版本。需要struts2-spring 排除依赖(不使用3.0.5依赖)

右键-Exclude

框架 day46 Maven_第39张图片        

       注意:查看代码,如果不符合要求,需要手动的修改。(spring自己添加的排除依赖去掉)


  	
  	
  		org.apache.struts
  		struts2-spring-plugin
  		2.3.15.3
  		
  			
  			
  				spring-core
  				org.springframework
  			
  		
  	
  	
  	
  		org.springframework
  		spring-beans
  		3.2.0.RELEASE
  	
  


6.3.3       依赖调节


    调解原则:

    第一原则:路径近者优先原则

     此处路径近,所以X的版本为2.0

    第二原则:第一声明者优先原则。如果路径相同,第一个声明的优先。

例子:

A->B->C->D->X(1.6)

A->D-X(2.0)

X是A的传递依赖

 

7 SSH整合(使用Maven重写CRM)


1.1.1       创建web项目

1.1.2       导入jar

添加jar依赖

•Spring(context / aspects / orm / test / web)

•Hibernate(core / slf4j / c3p0 / driver / ehcache)

•Struts (core/ spring plugin / json plugin /  )

•Web (servle /jsp / jstl / )

•junit


参考《pom_ssh.xml》 整合基本配置


  4.0.0
  com.itheima.crm
  maven_crm
  0.0.1-SNAPSHOT
  war
  
    
      
        maven-compiler-plugin
        
          1.6
          1.6
        
      
    
  
  
  	
  	
  		org.springframework
  		spring-context
  		3.2.0.RELEASE
  	
  	
  	
  		org.springframework
  		spring-aspects
  		3.2.0.RELEASE
  	
  	
  	
  		org.springframework
  		spring-orm
  		3.2.0.RELEASE
  	
  	
  	
  		org.springframework
  		spring-test
  		3.2.0.RELEASE
  	
  	
  	
  		org.springframework
  		spring-web
  		3.2.0.RELEASE
  	
  	
  	
  		org.hibernate
  		hibernate-core
  		3.6.10.Final
  	
  	
  	
  		org.slf4j
  		slf4j-log4j12
  		1.7.2
  	
  	
  	
  		c3p0
  		c3p0
  		0.9.1.2
  	
  	
  	
  		mysql
  		mysql-connector-java
  		5.1.22
  		runtime
  	
  	
  	
  		net.sf.ehcache
  		ehcache
  		1.5.0
  	
  	
  	
  		org.apache.struts
  		struts2-core
  		2.3.15.3
  	
  	
  	
  		org.apache.struts
  		struts2-spring-plugin
  		2.3.15.3
  	
  	
  	
  		org.apache.struts
  		struts2-json-plugin
  		2.3.15.3
  	
  	
  	
  		javax.servlet
  		servlet-api
  		2.5
  		provided
  	
  	
  	
		javax.servlet.jsp
		jsp-api
		2.1
		provided
	
  	
  	
  		javax.servlet
  		jstl
  		1.2
  	
  	
  	
  		junit
  		junit
  		4.9
  		test
  	
  

参数《pom_ssh2.xml》 使用properties 管理 版本

 


  4.0.0
  com.itheima.crm
  maven_crm
  0.0.1-SNAPSHOT
  war
  
    
      
        maven-compiler-plugin
        
          1.6
          1.6
        
      
    
  
  
  
  
  	3.2.0.RELEASE
  	3.6.10.Final
  
  
  
  	
  	
  		org.springframework
  		spring-context
  		${spring.version}
  	
  	
  	
  		org.springframework
  		spring-aspects
  		${spring.version}
  	
  	
  	
  		org.springframework
  		spring-orm
  		${spring.version}
  	
  	
  	
  		org.springframework
  		spring-test
  		${spring.version}
  	
  	
  	
  		org.springframework
  		spring-web
  		${spring.version}
  	
  	
  	
  		org.hibernate
  		hibernate-core
  		3.6.10.Final
  	
  	
  	
  		org.slf4j
  		slf4j-log4j12
  		1.7.2
  	
  	
  	
  		c3p0
  		c3p0
  		0.9.1.2
  	
  	
  	
  		mysql
  		mysql-connector-java
  		5.1.22
  		runtime
  	
  	
  	
  		net.sf.ehcache
  		ehcache
  		1.5.0
  	
  	
  	
  		org.apache.struts
  		struts2-core
  		2.3.15.3
  	
  	
  	
  		org.apache.struts
  		struts2-spring-plugin
  		2.3.15.3
  	
  	
  	
  		org.apache.struts
  		struts2-json-plugin
  		2.3.15.3
  	
  	
  	
  		javax.servlet
  		servlet-api
  		2.5
  		provided
  	
  	
  	
		javax.servlet.jsp
		jsp-api
		2.1
		provided
	
  	
  	
  		javax.servlet
  		jstl
  		1.2
  	
  	
  	
  		junit
  		junit
  		4.9
  		test
  	
  

*根据maven约定项目结构编写代码

java下不能有配置文件*.hbm.xml应放在resources下


多模块&继承

框架 day46 Maven_第40张图片


*多模块

框架 day46 Maven_第41张图片

定义一组构建模块的聚集

特点:

       •Maven build父模块的时候,会自动build子模块

       •父模块的packaging必须为POM


*继承

复用配置

可继承的元素 * 可继承的元素

       •groupId, artifactId, version.(groupId/artifactId之一必须重写)

       •dependencies* dependencies

             plugins

       •dependencyManagement

       •pluginManagement

       •Reporting

       •Developers& Contributors

子模块可任意重写父模块配置


8私服搭建


    一般情况使用maven公司,都会搭建自己的私服。

    一般情况目的:使用私服,不需要搭建。

8.4   使用私服

    为所有来自中央仓库的构件安装提供本地缓存

    下载网站

•     http://nexus.sonatype.org/

•     安装版本:nexus-2.7.0-06.war

下载war版本,复制tomcat/webapps安装(tomcat启动自解压war)

启动:bin/startup.bat

 启动tomcat,将在c盘创建sonatype-work目录

       •win7位置:C:\Users\当前用户\sonatype-work\nexus

8.6   nexus目录结构

    位置:C:\Users\Administrator\sonatype-work\nexus

8.6.1       安装目录结构

框架 day46 Maven_第42张图片 

 

8.6.2       索引目录结构

 框架 day46 Maven_第43张图片

 

8.6.3       存储目录

 框架 day46 Maven_第44张图片

 

8.7   nexus配置(无法上网的配置)

将ctx拷贝到C:\Users\Administrator\sonatype-work\nexus\indexer\central-ctx目录

将本地仓库D:\java\maven\repository复制到C:\Users\Administrator\sonatype-work\nexus\storage\central目录


8.8   访问

访问URL

       •http://localhost/nexus-2.7.0-06/

 默认账号

       •用户名: admin

       •密码: admin123

8.9   发布到私服(上传)

8.9.1       配置账号和密码

修改settings.xml

       
           releases
           admin
           admin123
   
       
           Snapshots
              admin
           admin123
   

releases 发布版对应一个URL:http://localhost:8080/nexus-2.7.0-06/content/repositories/releases/

Snapshots 测试版对应一个URL:http://localhost:8080/nexus-2.7.0-06/content/repositories/snapshots/

8.9.2       确定当前项目发布配置信息

修改当前 pom.xml

  
    
        releases
        Internal Releases
        http://localhost:8080/nexus-2.7.0-06/content/repositories/releases/
    
    
        Snapshots
        Internal Snapshots
        http://localhost:8080/nexus-2.7.0-06/content/repositories/snapshots/
    


8.9.3       测试发布

deploy 发布

命令:
mvn deploy

8.10 从私服获得内容(下载)


8.10.1     配置镜像

修改settings.xml配置镜像,理解就相当于是过滤器,拦截器原本请求路径

	
		nexus
		*
		http://localhost:8080/nexus-2.7.0-06/content/groups/public/
	
框架 day46 Maven_第45张图片

public 表示一组私服仓库组合

  框架 day46 Maven_第46张图片      

       分别从私服 发布、测试、第三方、中央获取,如果没有在从外网中央获得


8.10.2     配置自定义 profile


        nexus
        
            
         	        central
        	        http://repo1.maven.org/maven2/
        	        true
        	        true
            
    	
    	
            
        	      central
         	      http://repo1.maven.org/maven2/
         	      true
        	      true
            
        

框架 day46 Maven_第47张图片


8.10.3     激活profile

使用profile需要先在配置中激活 


              nexus


你可能感兴趣的:(笔记,web,笔记,maven)