一、maven依赖范围:

classpath 分为三种:编译classpath , 测试classpath , 运行classpath

Scope 选项如下:
Compile:编译依赖范围。默认就是compile。在编译,测试,运行都有效;
Test:测试依赖范围。仅测试有效; 例如JUnit;
Provided:已提供依赖范围。编译,测试有效,运行时候无效。例如servlet-api。
System:系统依赖范围。(了解即可)使用system 范围的依赖必须通过sytemPath 指定依赖文件的路径。
Import:导入依赖范围。(了解即可)使用dependencyManagement 时候,可以导入依赖配置。
编译classpath,测试classpath,运行classpath,就看编译、测试、运行的时候是不是加载这个jar;
Scope:
test: 只是在进行测试的时候需要用一下而已;
provided: ....例如servlet-api,什么意思?比如我们把user-web打包(maven install),查看这个war包,发现web-inf/classes下面也有servle-api这个jar包,但是是不需要的,发布到tomat里面,tomcat的lib下面本身就有了servlet-api了;
 
因此将user-web/pom.xml改下:
<!-- 添加Servlet支持 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency> <dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<scope>provided</scope>
</dependency>
 
二、Maven 生命周期
了解下;
什么意思呢?我们进行的一些maven compile,maven test,maven install,maven clean等一些操作,都是有一系列过程的(基本上都是由一些插件进行的);
Maven 生命周期简介:Maven 通过插件的方式完成一系列过程来实现功能。
Maven 拥有三套独立的生命周期:
Clean 清理项目
Default 构建项目
Site 建立项目站点(了解即可) Clean 生命周期:
1,pre-clean 执行一些清理前需要完成的工作;
2,clean 清理上一次构建生成的文件;
3,post-clean 执行一些清理后需要完成的工作; Default 生命周期:
1,validate;
2,initialize;
3,generate-sources;
4,process-sources;
5,generate-resources;
6,process-resources;
7,compile;
8,process-classes;
9,generate-test-sources;
10,process-test-sources;
11,generate-test-resources;
12,test-compile;
13,process-test-classes;
14,test;
15,prepare-package;
16,package;
17,pre-integration-test;
18,integration-test;
19,post-integration-test;
20,integration-test;
21,post-integration-test;
22,verifty;
23,install;
24,deploy; Site 生命周期:
1,Pre-site;
2,site;
3,post-site;
4,site-deploy;
 
 

maven学习(6)-Maven依赖范围的更多相关文章

  1. Maven学习(十七)-----Maven外部依赖

    Maven外部依赖 正如大家所了解的那样,Maven确实使用 Maven 库的概念作依赖管理.但是,如果依赖是在远程存储库和中央存储库不提供那会怎么样? Maven 提供为使用外部依赖的概念,就是应用 ...

  2. maven学习笔记三(依赖特性,作用域)

    上一章中  我们看到了添加了个junit的依赖包.那么maven中想添加依赖的jar包我们只需要配置相应的dependency就行.例如: <dependency> <groupId ...

  3. Maven学习(1) - Maven入门

    home index:http://maven.apache.org/ download:http://maven.apache.org/download.cgi install: http://ma ...

  4. Maven学习 二 Maven环境搭建

    第一步:下载Maven并解压 注意选择镜像地址,选择国内的会快点 解压目录 Maven目录分析 bin:含有mvn运行的脚本 boot:含有plexus-classworlds类加载器框架 conf: ...

  5. Maven学习- 使用Maven构建Web项目

    从网上查了一些资料,才算明白(也就是怎么操作吧),怎么使用Maven构建一个Web项目,找到一篇文档,主要都是从这里学到的: 下载地址:使用Eclipse构建Maven的Web项目.docx 现自己在 ...

  6. Maven学习(六)-----Maven仓库的详细介绍

    Maven仓库的详细介绍 在Maven中,任何一个依赖.插件或者项目构建的输出,都可以称之为构件.Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库.(仓库就是存放依 ...

  7. Maven学习(四)-----Maven中央存储库

    Maven中央存储库 当你建立一个 Maven 的项目,Maven 会检查你的 pom.xml 文件,以确定哪些依赖下载.首先,Maven 将从本地资源库获得 Maven 的本地资源库依赖资源,如果没 ...

  8. Maven学习(三)-----Maven本地资源库

    Maven本地资源库 Maven的本地资源库是用来存储所有项目的依赖关系(插件jar和其他文件,这些文件被Maven下载)到本地文件夹.很简单,当你建立一个Maven项目,所有相关文件将被存储在你的M ...

  9. maven 学习---使用Maven创建Java项目

    在本教程中,我们将向你展示如何使用 Maven 来创建一个 Java 项目,导入其到Eclipse IDE,并打包 Java 项目到一个 JAR 文件. 所需要的工具: Maven 3.3.3 Ecl ...

  10. Maven学习总结--maven入门(一)

    一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理.

随机推荐

  1. easyui datagrid 诡异的无法显示问题

    举个应用场景的例子来说明: 在采购单的编辑页面,上方为采购单自身的属性信息,下方使用tabs控件,加入两个tab页,分别为采购明细列表(DataGrid)和审核记录列表(DataGrid),即一个主业 ...

  2. myeclipse10 破解版安装

    安装包请看百度云: step1 step2 step3 step4 step5 step6 安装 svn,可以参考: http://www.cnblogs.com/OnlyCT/p/6061134.h ...

  3. CCScrollView

    #ifndef TestCCScrollView_testScene_h #define TestCCScrollView_testScene_h #include "cocos2d.h&q ...

  4. JDK安装和环境变量配置-成功经验

    JDK安装和环境变量配置1.下载安装软件 2.安装JDK--开发环境,路径 3.之后打开安装路径下的bin文件夹路径,我的是默认安装C:\Program Files\Java\jdk1.6.0_10\ ...

  5. Python学习(006)-深浅拷贝及集合

     深浅拷贝 import copy husband=['xiaoxin',123,[200000,100000]] wife=husband.copy() #浅拷贝 wife[0]='xiaohong ...

  6. Redmine开源项目管理搭建

    今年7月底,跳槽到新公司,新公司对于项目管理,也是从今年上半年开始有这个想法的.都是新同事,整个项目管理流程内部讨论决定如何制定. 刚入职时,对于项目需求的管理都是通过excel和project记录的 ...

  7. SWIFT用ScrollView加图片制作Banner

    网上参考OBJC写的用ScrollView图片轮播效果,照着画了个,先上效果图: 附上代码: @IBOutlet weak var pc: UIPageControl! @IBOutlet weak ...

  8. 详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程

    Himi  原创, 欢迎转载,转载请在明显处注明! 谢谢. 原文地址:http://blog.csdn.net/xiaominghimi/article/details/6937097 //——201 ...

  9. php变量什么情况下加大括号{}

    下面几个比较能说明原因的解释是: 表示{}里面的是一个变量  ,执行时按照变量来处理 在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了. 其实输出那块是等同于pr ...

  10. Gradle 下载不了

    可自行下载对应的 gradle-x.x-all.zip 放在下列目录 C:\Users\penno\.gradle\wrapper\dists\gradle-4.4-all\9br9xq1tocpiv ...