资讯专栏INFORMATION COLUMN

maven工程A,A依赖jar包B,B又依赖jar包C,能直接升级C吗?

tuantuan / 2462人阅读

摘要:问题描述我现在有一个工程,依赖包,又依赖包。如果现在包需要升级,比如从升级到,但是我又没有包的源代码。

1.问题描述
我现在有一个maven工程A,A依赖jar包B,B又依赖jar包C。如果现在jar包C需要升级,比如从1.0升级到2.0,但是我又没有jar包B的源代码。
1)我可以直接升级jar包C吗?
2)jar包B在pom文件中指定依赖1.0版本,现在升级jar包C到2.0版本了,启动tomcat的时候jar包B的pom依赖会不会检测出问题?
3)如果我把jar包C直接干掉,tomcat启动的时候回检查import的依赖吗?

2.做了如下一个实验,验证环境是:
1)apache-tomcat-7.0.75-windows-x64
2)jdk1.8.0_91
3)maven3.2.1

3.验证流程如下:

4.回答一下上面的几个问题
1)我可以直接升级jar包C吗?
可以升级,前提是新版本的jar包接口兼容老版本的接口
2)jar包B在pom文件中指定依赖1.0版本,现在升级jar包C到2.0版本了,启动tomcat的时候jar包B的pom依赖会不会检测出问题?
maven只是在编译的时候检测依赖,版本启动运行的时候不检测版本依赖
3)如果我把jar包C直接干掉,tomcat启动的时候回检查import的依赖吗?
tomcat在启动的时候不会检测依赖,但是在业务访问的时候如果涉及到相关类和接口,则会由于找不到依赖包而报NoClassDefFoundError

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/66781.html

相关文章

  • Maven学习笔记

    摘要:学习笔记先生,您在写代码吗不,我们正在完成一项伟大的工程。于是打算重新学习一下。中央仓库镜像为了分担中央仓库的流量,提升用户的访问速度。生成项目报告,站点,发布站点。修改源码后也需要逐个手动进行操作。 maven学习笔记 先生,您在写代码吗? 不,我们正在完成一项伟大的工程。 前言 在刚学maven时,我就把maven当作一个引入jar包的工具而已,以前是自己下载jar包,现在是只用...

    tomlingtm 评论0 收藏0
  • Maven 实战

    摘要:的主要思想是约定优于配置。强烈建议遵循以上规范,避免不必要的麻烦。依赖传递依赖范围除了控制,还会对依赖传递产生影响。此外还提供了和来进一步管理依赖,分别称为可选依赖和排除依赖。 showImg(https://segmentfault.com/img/remote/1460000012363876?w=1240&h=698); Maven 是跨平台的项目管理工具,主要服务于基于Java...

    twohappy 评论0 收藏0
  • Maven的pom文件那些事

    摘要:文件项目隶属的实际项目名实际项目中的一个项目模块名称版本号当前项目打包的方式,默认为以上的配置会获得一个格式的包用于定义构建输出的一些附属的构建。 pom.xml文件 org.son.nexus//项目隶属的实际项目名 nexus-indexer//实际项目中的一个maven项目模块名称 2.0.0//版本号 jar//当前maven项目打包的方式,默认为jar 以上的配置会获得一个-...

    NoraXie 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<