Maven_构建和pom.xml

概述

Maven是为Java项目提供构建和依赖管理支持的工具

构建环节

  1. 清理clean

    删除上一次构建的结果

  2. 编译compile

    Java源程序编译成*.class字节码文件

  3. 测试test

    运行提前准备好的测试程序,执行src/text/java下的junit测试用例

  4. 报告site

    每次测试后用标准格式记录和显示测试结果

  5. 打包package

    Java工程:jar包

    web工程:war包

  6. 安装install

    把一个Maven工程经过打包操作生成jar包或war包存入Maven仓库

  7. 部署deploy

    部署jar包:把一个jar包部署到服务器上

    部署war包:借助maven插件,将war包部署到tomcat服务器上

pom.xml

项目对象模型:将工程抽象为一个模型

公司或组织的id,即公司或组织域名的倒序,通常也会加上项目名称

一个项目或者是项目中的一个模块的 id,即模块的名称,将来作为 Maven 工程的工程名

版本号

依赖范围

  • compile:编译范围(默认依赖范围),编译范围的依赖会被打包

  • provided:当jdk或者一个容器提供该依赖后才使用。provided依赖在编译和测试时需要,运行时不需要(已经被容器提供了)

  • runtime:运行和测试时需要,编译时不需要,runtime范围的依赖会被打包

  • test:编译和运行时不需要,测试编译和测试运行时需要,不会被打包

  • system:一般不推荐使用,从系统路径引入项目

  • import:使用该依赖范围的dependency只能放在dependencyManagement中,且需要配合pom使用

    pom指定该工程的打包方式为pom,即只作为管理管理子工程依赖的项目,不打包

    使用该import之后就能使子工程都能使用该dependency管理的依赖版本

    示例代码:

    <dependencyManagement>
    	<dependencies>
    		
    		<dependency>
    			<groupId>org.springframework.cloudgroupId>
    			<artifactId>spring-cloud-dependenciesartifactId>
    			<version>Dalston.SR1version>
    			<type>pomtype>
    			<scope>importscope>
    		dependency>
    		
    		<dependency>
    			<groupId>org.springframework.bootgroupId>
    			<artifactId>spring-boot-dependenciesartifactId>
    			<version>1.5.9.RELEASEversion>
    			<type>pomtype>
    			<scope>importscope>
    		dependency>
    	dependencies>
    dependencyManagement>
    

    spring-cloud-dependenciesspring-boot-dependencies只是作为管理SpringCloud和SpringBoot依赖版本的父工程,在这里使用了import后,该工程的子工程都能免写SpringCloud和SpringBoot的依赖了

依赖排除,一般是为了避免jar包之间的冲突

代码示例:

<dependency>
	<groupId>net.javatv.mavengroupId>
	<artifactId>authartifactId>
	<version>1.0.0version>
	<scope>compilescope>
	
	

你可能感兴趣的:(Spring,maven,xml,java)