栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Maven项目的pom文件中各标签详解

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Maven项目的pom文件中各标签详解

POM是项目对象模型(Project Obiect Model )的简称。

pom.xml主要描述了项目的maven坐标,该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。是项目级别的配置文件。

声明规范



    4.0.0
modelVersion


4.0.0
packaging

jar

pom
name

blogserver
description
 
贝贝无敌帅!!!
parent


     org.springframework.boot
     spring-boot-starter-parent
     1.5.9.RELEASE
     
      

properties(配置全局属性)

    
    UTF-8
    UTF-8
     
    
    1.8
    5.0.2.RELEASE 

eg:


        
            org.springframework
            spring-web
            
            ${spring.version} 
        
dependencies
  

      
    
         
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        1.3.1
    
    
    
        com.alibaba
        druid
        1.0.29
    

    
    
        junit
        junit
        4.12
        test
    

  • groupld
 
org.sang
  • artifactId
 
blogserver
  • version

0.0.1-SNAPSHOT
  • scope

scope主要是为了管理依赖的部署,确定依赖的使用范围。使用scope标签,可以很方便、直观的进行依赖的总体管理。

使用:

我们把.class文件叫做字节码文件,而.java文件叫做源码。

什么是编译:就是对源码进行翻译,翻译之后就变成了.class文件了。
什么是运行:编译好了之后,将.class文件装载到JVM上进行执行。

  1. compile(默认值)
    缺省值,可省略不写。此值表示该依赖需要参与到项目的编译、测试以及运行周期中,打包时也要包含进去。eg:commons-fileupload
  2. provided
    该依赖在打包的时候可以不用包含进去,别的设施会提供。事实上该依赖理论上可以参与编译、测试、运行等周期。相当于compile,但是打包阶段做了exclude(排除)操作,eg:servlet-api、jsp-api
  3. runtime
    该依赖项目无需参与项目的编译,不过后期的测试和运行周期需要其参与。与compile相比,跳过了编译而已。例如JDBC驱动,适用运行和测试阶段。
  4. test
    该依赖仅仅参与测试相关的工作,包括测试代码的编译和执行,不会被打包,eg:上面的Junit
  5. system
    从参与度来说,和provided相同,但是它不会去maven仓库寻找依赖,而是在本地找,需要配合systemPath标签使用。
    eg:

    org.hamcrest
    hamcrest-core
    1.5
    system
    ${basedir}/WebContent/WEB-INF/lib/hamcrest-core-1.3.jar

  1. import
    由maven 2.0.9新加入,只能在dependencyManagement中使用,相当于从其它pom文件中导入依赖设置。
build

打开父pom.xml修改打包方式jar为pom,注意:build内容也需要做替换,因为默认的spring-boot-maven-plugin这种方式,等到后期打包的时候它会一直提示你—你引入的依赖不存在!

   
   
        ${project.artifactId}
        
            
            
                org.apache.maven.plugins
                maven-resources-plugin
                2.7
                
                    UTF-8
                
            
            
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.2
                
                    1.7
                    1.7
                    UTF-8
                
            
        
        
            
                
                
                    org.apache.tomcat.maven
                    tomcat7-maven-plugin
                    2.2
                
            
        
  
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/970985.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号