maven

Maven是一个跨平台的项目管理工具,主要用于基于java平台的项目构建,依赖管理。

maven_第1张图片

1.下载,配置bin目录到path中,mvn -v  测试是否配置成功

2.F:\apache-maven-3.5.0-bin\apache-maven-3.5.0\conf\setting.xml里面配置本地仓库的地址   F:\mavenresp

Cmd运行mvn命令,先找用户setting.xml(用户配置)(建议删除了),再去找maven安装目录 中的conf下的setting.xml(全局配置,一定要配置本地仓库)。


3.maven项目的约定的目录结构

src/main/java 存放项目的java文件
src/main/resources 存放项目的资源文件,如spring,hibernate的配置文件
src/test/java   存放所有的测试的java文件
src/test/resources 存放测试用的资源文件
target   项目输出位置
pom.xml  文件  
4.mvn命令和生命周期

 

清理 mvn clean  target    下的内容清空
编译 mvn compile         编译后,target中出现class文件,但是不管test里面的内容
测试 mvn test           只要进行测试,清理和编译可以自动执行了。 
报告  
打包 mvn package    执行后 target中出现jar包
部署 mvn install           把工程放到仓库里面  

target/classes存放编译后的类

target/test-classes存放编译后的测试类

target/surefire-reports存放测试报告



5.pom.xml


  4.0.0

  com.itheima11.maven
  Hello
  0.0.1-SNAPSHOT
  jar

  Hello
  http://maven.apache.org

  
    UTF-8
  

  
    
      junit
      junit
      4.9
      test
    
  

project:表示一个工程

modelVersion:为版本号

坐标:
groupId:定义当前maven项目属于哪个项目
artifactId:定义实际项目中的某一个模块
version:定义当前项目的当前版本
packaging:定义当前项目的打包方式

继承:打包方式必须是pom,只继承pom


  4.0.0

  com.itheima11.maven
  Base
  0.0.1-SNAPSHOT
  pom


  
  	 com.itheima11.maven
  	 Base
  	 0.0.1-SNAPSHOT
  

6.仓库:本地--》企业私服(nuex)--》中央仓库

setting.xml中配置私服:

maven_第2张图片


如果不想连接私服,可以直接连接互联网。只需要把连接私服的所有的路径去掉即可。


    
    

    
    

    
        
            nexus-releases
            admin
            admin123
        
          
            nexus-snapshots
            admin
            admin123
        
    

    
             
            nexus-releases     
            *     
            http://192.168.1.8:8081/nexus/content/groups/public     
            
             
            nexus-snapshots     
            *     
            http://192.168.1.8:8081/nexus/content/groups/public-snapshots     
             
         

        
            
            nexus    
                
                    
                    nexus-releases    
                    http://nexus-releases    
                    true    
                   true    
                    
                    
                    nexus-snapshots    
                    http://nexus-snapshots    
                    true    
                    true    
                    
                
                
                    
                    nexus-releases    
                    http://nexus-releases    
                    true    
                    true    
                    
                    
                    nexus-snapshots    
                    http://nexus-snapshots    
                    true    
                    true    
                    
                
            
        
     
        
        nexus    
        
      
    








你可能感兴趣的:(maven)