Maven应用-安装

阅读更多

明确一下maven具体能帮助我们做些什么

  1. 项目构建
  2. 依赖管理
  3. 模块化开发
  4. 代码测试
  5. 项目信息管理
  6. 持续集成

maven的下载安装

 

1:windows 系统解压maven项目到指定目录 D:\sof\apache-maven-3.3.3-bin    mven下载路径,

目录结构如下


Maven应用-安装_第1张图片

 2:解压完成之后需要进行简单的配置才可使用

环境变量配置  M2_HOME-> D:\sof\apache-maven-3.3.3-bin

环境变量path添加 ${M2_HOME}\bin

maven经过以上两步基本配置完成, cmd 控制台输入  mvn -version 查看maven版本信息

 

maven相关配置文件

settings.xml存在于两个地方:

 1.安装的地方:$M2_HOME/conf/settings.xml (全局配置)

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

.m2的生成可使用mvn命令

 

setting相关配置

 



        
        本地仓库目录配置
	C:\Users\x\.m2\repository

        远程仓库认证信息配置
	
		
			nexus2    与仓库id对应
			admin
			admin123
		
	

        远程仓库镜像配置
	
		
			external  镜像id
			external:*,central被镜像仓库id
			Human Readable Name for this Mirror.
			http://xxxx:8081/nexus/content/groups/public/
		
	

        仓库配置
	
			
				admin  仓库id
				Repositorynexus 
				http://xxxx:8081/nexus/content/groups/public/
			
	
         
        自定义属相配置
	
		
			dev  配置ID
			
				dev
				web
			
			
				
					admin
					Repositorynexus
					http://xxxx:8081/nexus/content/groups/public/
				
			
		
		
		
			prod 配置ID
			
				dev
				web
			
			
				
					admin
					Repositorynexus
					http://xxxx:8081/nexus/content/groups/public/
				
			
		
	
	
	
		dev 启用自定义属相配置 根据ID
	


 

 仓库镜像配置

external:* 匹配所有不在本机上的远程仓库(使用localhost 和 file://协议的除外)

* 匹配所有远程仓库

repo1,repo2 对rpo1和repo2进行镜像,使用逗号分隔,rep1的为仓库ID

*,!repo2 匹配所有远程仓库,repo2除外,使用感叹号将仓库从匹配中排除

 

 

仓库分类

  1. 本地仓库
  2. 远程仓库(私服 中央仓库 其他公共仓库都输入远程仓库)
  •       私服
  •       中央仓库
  (apache-maven-3.5.2\lib -> maven-model-builder-3.5.2.jar -> org\apache\maven\model\pom-4.0.0.xml(超级pom)) 
  
    
      central
      Central Repository
      https://repo.maven.apache.org/maven2
      default
      
        false
      
    
  

 

  •       其他公共仓库

 

所有pom(项目对象模型都继承超级pom) 从超级pom中可看出maven约定项目的目录结构如下

 







  4.0.0

  
    
      central
      Central Repository
      https://repo.maven.apache.org/maven2
      default
      
        false
      
    
  

  
    
      central
      Central Repository
      https://repo.maven.apache.org/maven2
      default
      
        false
      
      
        never
      
    
  

  
    ${project.basedir}/target
    ${project.build.directory}/classes
    ${project.artifactId}-${project.version}
    ${project.build.directory}/test-classes
    ${project.basedir}/src/main/java
    ${project.basedir}/src/main/scripts
    ${project.basedir}/src/test/java
    
      
        ${project.basedir}/src/main/resources
      
    
    
      
        ${project.basedir}/src/test/resources
      
    
    
      
      
      
        
          maven-antrun-plugin
          1.3
        
        
          maven-assembly-plugin
          2.2-beta-5
        
        
          maven-dependency-plugin
          2.8
        
        
          maven-release-plugin
          2.3.2
        
      
    
  

  
    ${project.build.directory}/site
  

  
    
    
      release-profile

      
        
          performRelease
          true
        
      

      
        
          
            true
            maven-source-plugin
            
              
                attach-sources
                
                  jar
                
              
            
          
          
            true
            maven-javadoc-plugin
            
              
                attach-javadocs
                
                  jar
                
              
            
          
          
            true
            maven-deploy-plugin
            
              true
            
          
        
      
    
  



 

 

  超级pom中已经默认定义了项目的基本结构

    ${project.basedir}/target 项目构建后目标的输出目录
    ${project.build.directory}/classes源码目录
    ${project.artifactId}-${project.version}项目名称命名方式
    ${project.build.directory}/test-classes测试代码源码目录
    ${project.basedir}/src/main/java源码目录
    ${project.basedir}/src/main/scripts脚本源码目录
    ${project.basedir}/src/test/java测试代码目录
${project.build.directory} = ${project.basedir}/target
${project.basedir} = 项目目录

 约定的项目目录结构

src

     main

          java

     test

          java

target

     ${project.artifactId}-${project.version}.jar/war...

     class

     test-class

pom

 

 

 

 

 

 

 

 

 

  • Maven应用-安装_第2张图片
  • 大小: 11.2 KB
  • 查看图片附件

你可能感兴趣的:(工具,maven)