maven(4)------maven核心pom.xml文件常用元素分析

在maven项目中,pom文件是核心文件

pom.xml:

[html] view plain copy
  1. xml version="1.0" encoding="UTF-8"?>  
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  
  4.   <modelVersion>4.0.0modelVersion>  
  5.   <groupId>com.lanhuigu.controllergroupId>  
  6.   <artifactId>lanhuigu_pcartifactId>  
  7.   <version>0.0.1-SNAPSHOTversion>  
  8.   <packaging>warpackaging>  
  9.     
  10.   <name>lanhuigu_pcname>  
  11.   
  12.   <dependencies>  
  13.     <dependency>  
  14.     <groupId>junitgroupId>  
  15.     <artifactId>junitartifactId>  
  16.     <version>4.4version>  
  17.       
  18.     <scope>testscope>  
  19.     dependency>  
  20.   dependencies>  
  21. project>  
其中为xml文件版本编号和编码方式

project为pom.xml文件的根元素,主要声明了命名空间和xsd元素

mo

  
    
    
     
     
     
     
     
     
     
     
 
     
    4.0.0  
      
    asia.banseon  
      
    banseon-maven2  
      
    jar  
      
    1.0-SNAPSHOT  
      
    banseon-maven  
      
    http://www.baidu.com/banseon  
      
    A maven project to study maven.  
    
 
  
    
 
   
    
       
        jira  
        
        http://jira.baidu.com/banseon  
      
    
 
  
  
  
  
  
  
   
   
    
    
    
    
    
    
    
    
    
    
    
    
Demo banseon@126.com banseon@126.com banseon@126.com http:/hi.baidu.com/banseon/demo/dev/ HELLO WORLD banseon banseon@126.com Project Manager Architect demo http://hi.baidu.com/banseon No -5 Apache 2 http://www.baidu.com/banseon/LICENSE-2.0.txt repo A business-friendly OSS license scm:svn:http://svn.baidu.com/banseon/maven/banseon/banseon-maven2-trunk(dao-trunk) scm:svn:http://svn.baidu.com/banseon/maven/banseon/dao-trunk http://svn.baidu.com/banseon demo http://www.baidu.com/banseon ...... ...... Windows XP Windows x86 5.1.2600 mavenVersion 2.0.3 /usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/ /usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/ ...... ...... ...... ...... ...... ...... banseon-repository-proxy banseon-repository-proxy http://192.168.1.169:9999/repository/ default ...... org.apache.maven maven-artifact 3.8.1 jar test spring-core org.springframework true ...... banseon-maven2 banseon maven2 file://${basedir}/target/deploy banseon-maven2 Banseon-maven2 Snapshot Repository scp://svn.baidu.com/banseon:/usr/local/maven-snapshot banseon-site business api website scp://svn.baidu.com/banseon:/var/www/localhost/banseon-web

delVersion定义pom模型的版本,maven2和maven3中都是4.0.0

groupId定义项目属于哪个组,跟项目和组织关联,让人更容易理解

artifactId定义项目在组中唯一ID

version项目版本号,比如0.0.1-SNAPSHOT为开发版本,随着项目发展会出现1.0等发布版本

packaging打包方式,比如,将项目打成war包,jar包等等

name这个名字可有可无,如果写上项目名称,信息跟容易交流,逻辑更清晰些

*********************

dependencies定义jar包根元素

dependency定义jar包元素

groupId定义jar包分组,我们要将jar包放在哪个文件夹下

artifactId定义jar包在分组中唯一ID

version定义jar包的版本号

scope定义jar包的作用范围,比如,test,说明该jar包只是在测试代码引用,

在主代码中不引用


注: maven的pom.xml文件中还有很多文件元素,这里列举的只是比较常用或必须使用的

  
    
    
     
     
     
     
     
     
     
     
 
     
    4.0.0  
      
    asia.banseon  
      
    banseon-maven2  
      
    jar  
      
    1.0-SNAPSHOT  
      
    banseon-maven  
      
    http://www.baidu.com/banseon  
      
    A maven project to study maven.  
    
 
  
    
 
   
    
       
        jira  
        
        http://jira.baidu.com/banseon  
      
    
 
  
  
  
  
  
  
   
   
    
    
    
    
    
    
    
    
    
    
    
    
Demo banseon@126.com banseon@126.com banseon@126.com http:/hi.baidu.com/banseon/demo/dev/ HELLO WORLD banseon banseon@126.com Project Manager Architect demo http://hi.baidu.com/banseon No -5 Apache 2 http://www.baidu.com/banseon/LICENSE-2.0.txt repo A business-friendly OSS license scm:svn:http://svn.baidu.com/banseon/maven/banseon/banseon-maven2-trunk(dao-trunk) scm:svn:http://svn.baidu.com/banseon/maven/banseon/dao-trunk http://svn.baidu.com/banseon demo http://www.baidu.com/banseon ...... ...... Windows XP Windows x86 5.1.2600 mavenVersion 2.0.3 /usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/ /usr/local/hudson/hudson-home/jobs/maven-guide-zh-to-production/workspace/ ...... ...... ...... ...... ...... ...... banseon-repository-proxy banseon-repository-proxy http://192.168.1.169:9999/repository/ default ...... org.apache.maven maven-artifact 3.8.1 jar test spring-core org.springframework true ...... banseon-maven2 banseon maven2 file://${basedir}/target/deploy banseon-maven2 Banseon-maven2 Snapshot Repository scp://svn.baidu.com/banseon:/usr/local/maven-snapshot banseon-site business api website scp://svn.baidu.com/banseon:/var/www/localhost/banseon-web



你可能感兴趣的:(Maven)