关于两个jar包中存在包名和类名都完全相同的问题 .

java不同包中含有全限定类名相同的类时的加载顺序 问题:如果有两个不同的jar包中含有两个全限定类名完全相同的类,那么如果我们程序中使用到了这个类,会加载哪一个呢,今天我们就来做个试验看看。 为了做试验,我们建立如下三个module,其中main是一个springboot项目,其中引用了demo1和demo2两个模块。如下图 demo1和demo2中都有一个com.demo.DemoClass类,如下 然后我们在main类中写一个接口,访问com.demo.DemoClass中的info字段,如下。 好了,启动项目... 阅读详情

最近弄webservice,我使用的jdk自带的wsimport工具来生成客户端代码,发现生成的代码具有编译错误,错误描述如下:

The method getPort(QName, Class<T>) in the type Service is not applicable for the arguments (QName, Class<SCServicePortType>, WebServiceFeature[]).

而我单独创建新的项目来测试生成的客户端代码却没有这样的错误,所以错误原因在于jar包冲突.....

 

几近周折,终于让我发现,原来javax.xml.ws.Service这个类,即存在于jdk自带的rt.jar中,也存在于我项目引用包jaxws-api.jar,这种情况就是两个jar包中存在包名和类名都完全相同的问题。我需要的是rt.jar中的javax.xml.ws.Service类,但它却自动引入了jaxws-api.jar的javax.xml.ws.Service类,但是这两个jar包都不能去掉。

所以,只有改变编译器优先选择的jar顺序(这个顺序是可以改变的):在Eclipse中是在Java Build Path-》Order and Export里面,通过"up"/"down"按钮改变顺序,把jaxws-api.jar放在jdk的下面就可以了。

浅谈在JAR中同名类冲突问题 楔子 这段时间再给客户部署服务的时候,发现有一个服务在公司通过了所有测试,但是却在客户现场的生产环境上报出了一个诡异的问题。由于对出问题的那段代码不熟悉,所有前后折腾了2个小时才定位出来,原来是服务依赖的两个JAR包中都同时出现了一个同名类(该类的完全限定名一样),并且这两个类中都包含了同一个方法。在公司环境中执行的是正确的那个方法,而在客户现场执行的是错误的方法。这就导致了在公司没有问题的服务... 阅读详情

相关推荐

内网开发,Maven本地仓库中存在jar,但idea显示jar包不存在问题解决

介绍一下背景,项目要迁移进坑人的离线的内网开发,将在同事那编译通过的代码和maven仓库拷进内网,打算编译通过之后再上传私服,结果配好maven之后,本地库中的部分jar包显示没有引入,如下面的波浪线 想到可能是idea提示的不正确,直接编译吧,结果编译失败,主要错误信息如下 [ERROR] Failed to execute goal on project zeus-common-redis: Could not resolve dependencies for project com.hsjry

zxs9999的专栏 4918

当一个项目中导入两个jar包中含有相同包名和类名的类时,按照自己的要求去使用指定jar包下的类。

怎么分别执行两个jar包中的类。

文彬的博客 2万+

浅谈两个jar包中包含完全相同的包名和类名的加载问题

下面小编就为大家带来一篇浅谈两个jar包中包含完全相同的包名和类名的加载问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

不同jar包类名相同怎么办呀?

如果你在同一个项目中使用了不同的 jar 包,其中有两个类名相同,那么这时候就需要用到类的全名(包括包名)。例如,如果在你的项目中有两个包,一个是 com.example.package1,另一个是 com.example.package2,且两个包中都有一个类名为 MyClass,那么你可以使用如下方式来区分这两个类: com.example.package1.MyClass com.exam...

weixin_35753431的博客 1959

ollama环境变量配置:修改ollama的数据路径(安装路径)

ollama安装模型,如果很大,会占用C盘空间,影响系统运行速度,通过设置环境变量,来改变ollama放目录的地址。

正经教主是个热衷于正经学习分享的教主。 1万+

别再只会调速度了!用STM32的定时器中断精准控制伺服电机转角(避坑指南)

本文详细介绍了如何利用STM32的定时器中断和PWM输出实现伺服电机的精准转角控制,避免常见的速度控制误区。通过硬件配置、脉冲计数逻辑和优化技巧的实战讲解,帮助开发者掌握高精度位置控制方法,适用于工业自动化和机器人控制等场景。

weixin_42531163的博客 414

jar包中存在包名和类名都完全相同的问题

京东2022校园招聘正式开启啦 这是我的专属内推码 CJCH 加入京东,更快到达你想要的未来~

qq_32473523的博客 3563

Linux系统搭建OpenClaw(原Clawdbot)全流程指南 最新版

工具定位:开源个人 AI 助手,支持文件读取、命令执行、多渠道交互(Telegram / 本地终端等);系统要求:主流 Linux 发行版(Ubuntu/Debian/CentOS 等),Node.js ≥22(核心依赖);安全提示:OpenClaw 为测试版,具备高权限操作能力,建议使用非主力机,配置权限白名单,避免接触敏感数据。

AI时代老码农的第二春 6560

关于两个jar包中存在包名和类名都完全相同的问题

最近弄webservice,我使用的jdk自带的wsimport工具来生成客户端代码,发现生成的代码具有编译错误,错误描述如下: The method getPort(QName, Class) in the type Service is not applicable for the arguments (QName, Class, WebServiceFeature[]). 而我单独创建新

jayjjb的专栏 2万+

R语言绘图中文显示全攻略:从乱码到完美适配

本文详细解析了R语言绘图中的中文显示问题,从乱码根源到完美适配方案。通过showtext、sysfonts和extrafont等工具包的应用,提供跨平台的中文显示解决方案,涵盖ggplot2图表、PDF/PNG输出及Shiny应用等场景,助力用户高效实现R绘图中文完美呈现。

hp777的博客 258

S32的进阶之路->3,S32DS新建/删除/导入工程

右击工程名,点击Delect进行工程删除。选中Delect project contents on disk则会彻底删除工程,不选中Delect project contents on disk工程文件会保存在工作空间中。在Improt Projects中选择工程所在文件夹,选中所需要导入的工程,勾选Copy projects into workspace。选中目标示例工程,点击Finish,完成创建工程。导入已有工程,右击右击Project Explorer空白处,选择Import。

LC_8575的博客 2226

关于两个jar包中存在包名和类名都完全相同的jar包冲突问题

最近弄webservice,我使用的jdk自带的wsimport工具来生成客户端代码,发现生成的代码具有编译错误,错误描述如下: The method getPort(QName, Class) in the type Service is not applicable for the arguments (QName, Class, WebServiceFeature[]). 而我单

3万+

嵌入式工程师成长之路(0)----认识元件

在电子设计与维修中,认识元件是成功的关键!面对琳琅满目的电阻、电容、电感与二极管,样子形式千奇百怪,你是否也曾陷入困难? 本文基于行业权威分类标准,结合十年工程师实战经验,深度解析4大类、30+子类电子元件的核心特性、应用场景与避坑指南,助你从“小白”秒变“电子高手”!

云轩阁 11万+

(转)关于两个jar包中存在包名和类名都完全相同的问题

转自: http://blog.csdn.net/jayjjb/article/details/7963937     最近弄webservice,我使用的jdk自带的wsimport工具来生成客户端代码,发现生成的代码具有编译错误,错误描述如下: The method getPort(QName, Class&lt;T&gt;) in the type Service is not ...

jameskaron的专栏 911

Sigrity System SI Parallel Bus Analysis模式进行DDR3仿真分析操作指导-单个颗粒

Default Strobe Offset:DQS默认偏移时间,自动填充为0.5ns,即DQS默认偏移1/2UI,DQS滞后于DQ 1/2UI,让建立保持时间均分。WLO:写平衡偏移的数值,DataL是0ps,DataU是500ps,是根据WLOSkew自动定义的,可以认为是WLOSkew取整,也可以根据需要手动调整数值。注意AddCmd的UI=T,这里的Data Rate仍然是DQ的速率,并不是地址线的速率,地址线的速率=1/UI=1/2ns=0.5Gbps。

weixin_54787054的博客 366

第三章-python基础语法

有C语言基础应该这样学 Python。

qq_46187594的博客 1176

关于两个jar包中存在包名和类名都完全相同的问题 (...is not applicable for the arguments...)

最近弄webservice,我使用的jdk自带的wsimport工具来生成客户端代码,发现生成的代码具有编译错误,错误描述如下: The method getPort(QName, Class) in the type Service is not applicable for the arguments (QName, Class, WebServiceFeature[]). 而我单独创建新

大挪移的博客 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

关于两个Jar包中存在相同的包名和类名的冲突问题

问题发现: 最近在整richfaces的树形组件,发现在树形节点对象TreeNodeImpl中没有setData()方法;查看源码后,发现工程引的包是richfaces-components-api-4.2.0.Final.jar,节点对象路径是org.richfaces.model.TreeNodeImpl;查询解决办法是引richfaces-api-3.3.0.ga.jar这个Jar包,但...

E路之吕 9190

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

甲方扔给两个存在包名与类名均相同的Jar包,要在工程中同时使用怎么办?

你的项目是否曾遇到过有jar包冲突,而这些冲突的jar包又必须同时存在的情况?一般来说,jar 冲突都是因不同的上层依赖项,自身又依赖了相同 jar 包的不同版本所致,解决办法也都是去除其中一个即可。需要同时保留冲突jar包的情况,实属罕见。 在与第三访系统集成通信时,有一种方式是由被集成方提供Jar包,业务代码调用Jar包里提供的相关Java类或接口,并且很多都同时附带一份集成开发文档。 如果...

weixin_30586369的博客 846

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

有关两个jar包中包含完全相同的包名和类名的加载问题

首先从表现层介绍,后续后深入原理。 1,先简单介绍maven如何生成jar文件方便测试 <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.4</version> ...

weixin_34377065的博客 3229
上一篇: struts1的工作原理
下一篇: java开发必须配置JAVA_HOME,但可以不配置CATALINA_HOME
Box_L
博客等级 码龄14年 1粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值