当前位置: 首页 > news >正文

网站加网页建设工程招投标网站

网站加网页,建设工程招投标网站,天津泰达建设集团网站,网页成品Maven(五):Maven的使用——依赖的测试 前言一、实验六:测试依赖的范围1、依赖范围1.1 compile 和 test 对比1.2 compile 和 provided 对比1.3 结论 二、实验七:测试依赖的传递性1、依赖的传递性1.1 概念1.2 传递的原则…

Maven(五):Maven的使用——依赖的测试

  • 前言
  • 一、实验六:测试依赖的范围
    • 1、依赖范围
      • 1.1 compile 和 test 对比
      • 1.2 compile 和 provided 对比
      • 1.3 结论
  • 二、实验七:测试依赖的传递性
    • 1、依赖的传递性
      • 1.1 概念
      • 1.2 传递的原则
  • 三、实验八:测试依赖的排除
    • 1、概念
    • 2、配置方式
    • 3、测试

前言

本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注博主!也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远!



一、实验六:测试依赖的范围

1、依赖范围

标签的位置:dependencies/dependency/scope

标签的可选值:compile/test/provided/system/runtime/import

1.1 compile 和 test 对比

main目录(空间)test目录(空间)开发过程(时间)部署到服务器(时间)
compile有效有效有效有效
test无效有效有效无效

1.2 compile 和 provided 对比

main目录(空间)test目录(空间)开发过程(时间)部署到服务器(时间)
compile有效有效有效有效
provided有效有效有效无效

1.3 结论

compile:通常使用的第三方框架的 jar 包这样在项目实际运行时真正要用到的 jar 包都是以 compile 范围进行依赖的。比如SSM 框架所需jar包。

test:测试过程中使用的 jar 包,以 test 范围依赖进来。比如 junit

provided:在开发过程中需要用到的“服务器上的 jar 包”通常以 provided 范围依赖进来。比如servlet-apijsp-api。而这个范围的 jar 包之所以不参与部署、不放进 war 包,就是避免和服务器上已有的同类 jar包产生冲突,同时减轻服务器的负担。说白了就是:“服务器上已经有了,你就别带啦!”

二、实验七:测试依赖的传递性

1、依赖的传递性

1.1 概念

A 依赖 BB 依赖 C,那么在 A 没有配置对 C 的依赖的情况下,A 里面能不能直接使用 C

1.2 传递的原则

A 依BB 依赖 C 的前提下,C 是否能够传递到 A,取决于 B 依赖 C 时使用的依赖范围。

B 依赖 C 时使用 compile 范围:可以传递
B 依赖 C 时使用 testprovided 范围:不能传递,所以需要这样的jar 包时,就必须在需要的地方明确配置依赖才可以。

三、实验八:测试依赖的排除

1、概念

A 依赖 BB 依赖 C 而且 C 可以传递到 A 的时候,A 不想要 C,需要在 A 里面把 C 排除掉。而往往这种情况都是为了避免 jar 包之间的冲突。

在这里插入图片描述

所以配置依赖的排除其实就是阻止某些 jar 包的传递。因为这样的 jar 包传递过来会和其他 jar 包冲突。

2、配置方式

<dependency><groupId>com.atguigu.maven</groupId><artifactId>pro01-maven-java</artifactId><version>1.0-SNAPSHOT</version><scope>compile</scope><!-- 使用excludes标签配置依赖的排除	--><exclusions><!-- 在exclude标签中配置一个具体的排除 --><exclusion><!-- 指定要排除的依赖的坐标(不需要写version) --><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId></exclusion></exclusions>
</dependency>

3、测试

测试的方式:在 pro02-maven-web 工程中配置对 commons-logging 的排除

<dependency><groupId>com.atguigu.maven</groupId><artifactId>pro01-maven-java</artifactId><version>1.0-SNAPSHOT</version><scope>compile</scope><!-- 使用excludes标签配置依赖的排除	--><exclusions><!-- 在exclude标签中配置一个具体的排除 --><exclusion><!-- 指定要排除的依赖的坐标(不需要写version) --><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId></exclusion></exclusions>
</dependency>

运行 mvn dependency:tree 命令查看效果:

[INFO] com.atguigu.maven:pro02-maven-web:war:1.0-SNAPSHOT
[INFO] +- junit:junit:jar:4.12:test
[INFO] | \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] +- javax.servlet:javax.servlet-api:jar:3.1.0:provided
[INFO] \- com.atguigu.maven:pro01-maven-java:jar:1.0-SNAPSHOT:compile
[INFO] \- org.springframework:spring-core:jar:4.0.0.RELEASE:compile

发现在 spring-core 下面就没有 commons-logging 了。

http://www.yayakq.cn/news/577008/

相关文章:

  • thinkphp5来做网站吗佛山建站 网站 商城
  • 网站认证怎么做乐陵森洁新能源有限公司电话
  • 400电话 网站建设内蒙古建设部网站官网
  • 工信部如何查网站备案三个字吉利好听的公司名称
  • wordpress 跳转到首页ppt一键优化
  • 做视频背景音乐专用网站做好一个网站后
  • 湖州网站集约化平台信用宁波企业网查询
  • 成都网站品牌设计刚注册在域名可以自己做网站吗
  • 网站建设及经营应解决好的问题重庆网站建设沛宣
  • 信息网站设计案例合肥企业网站建设
  • 网站建设费属于广告费吗6网站免费建站
  • 谷歌seo怎么提高网站权重网络营销方法有哪些举例
  • 如何给网站做二维码海城 网站建设
  • 页面设计的软件百度seo软件曝光行者seo
  • 一个商城网站开发要多少时间辽宁省建设工程信息网入辽打印
  • 郑州网站建设 app开发友情链接实例
  • 制作网站软件叫什么标书制作好学吗
  • 陕煤化建设集团网站矿建二公司软文大全800字
  • 自助建站帮助网免费查权重工具
  • 网站黏度安卓优化清理大师
  • 如何破解网站后台密码什么都能搜的浏览器
  • 外贸展示型网站建设公司新闻发布会的意义
  • 上海网站建设哪家服务好wordpress 左右图文排版
  • 国内网络科技网站建设在公司网站投简历该怎么做
  • 专业帮人做网站号码知乎 淘宝网站建设
  • c语言精品课程网站开发WordPress如何上传木马
  • 百度推广建设网站是干什么了罗伯特清崎说的网络营销是什么
  • 做淘宝代销哪个网站好企业邮箱账号注册
  • 沈阳网站 房小二建筑装修
  • 南京高端网站开发购物网站支付功能怎么做