`

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

    博客分类:
  • Java
阅读更多

转自:

http://blog.csdn.net/jayjjb/article/details/7963937

 

 

最近弄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包中包含完全相同的包名和类名的加载问题

    当多个Jar包中包含相同的包名和类名时,可能会出现类加载问题。下面我们来讨论这种情况下的类加载问题。 类加载机制 Java中的类加载机制是指Java虚拟机(JVM)在加载类文件时的相关处理过程。类加载机制分为三个...

    雷电获取包名与类名.apk

    可以获取安卓系统下,所有软件的包名与类名,用于安卓桥接开发很有帮助,是个很不错的安卓脚本开发工具.直接打开即可使用,真机与模拟器均可使用

    安卓获取apk包名类名

    2. **反编译APK**:使用工具如JAR解压器或专门的APK分析工具(如Apktool、dex2jar等),可以反编译APK,查看AndroidManifest.xml文件,从中提取包名和主类名。 3. **使用代码方式**:在Android应用内部,可以通过...

    FindJar-在jar包中查找包和类

    Java源代码,用于在jar包中查找包和类。

    着看所有apk的包名和类名,用于启动或关闭某个app

    了解APK的包名和类名在多个场景下都很有用,例如: - **启动应用**:通过包名和主Activity类名,可以编写代码或使用ADB命令启动特定应用,如`adb shell am start -n &lt;package_name&gt;/&lt;activity_name&gt;`。 - **自动化...

    jar包差异比较器.rar

    在实际应用中,"jar包差异比较器"的使用流程可能是这样的:首先,开发者选择需要比较的两个jar包,然后工具会生成一个报告,列出所有的差异,包括具体修改的类名和资源文件名。开发者可以根据报告快速定位到变化的...

    android调用第三方程序,需要包名、类名

    对于直接启动特定的Activity,你可以使用Intent的`setComponent()`方法,传入一个ComponentName对象,该对象包含包名和类名。ComponentName的构造函数需要包名和类名的字符串形式。 5. **启动Intent** 创建并设置...

    自动获取android包名类名

    在Android开发过程中,获取应用程序的包名和类名是一项常见的任务。这有助于调试、测试以及实现自动化脚本。Ubuntu作为一个流行的Linux发行版,为开发者提供了命令行工具来方便地完成这项工作。本篇文章将详细解释...

    Android包名类名查看

    这款名为“Android包名类名查看”的小应用,其核心功能是帮助用户获取设备上已安装应用的包名和类名信息。这对于开发者来说非常有用,他们可能需要这些信息来实现如调试、权限检查、自动化测试或分析竞品应用等功能...

    java打包成jar并执行jar包中指定的main方法

    其中,[jar 文件名] 是要执行的 Jar 文件的名称,[包名] 是要执行的类所在的包名,[类名] 是要执行的类名,[参数] 是要传入的参数。 例如,要执行名为 "mplus-service-jar-with-dependencies.jar" 的 Jar 文件中的 ...

    android查看包名类名工具

    这是一个android工程,可导入eclipse直接编译运行,功能是显示出android设备上的所有程序以及它们完整包名,主类名,图标和名称。以列表形式显示,只需写一个打开activity的方法就可以打开系统中安装了的apk,基于此...

    获取第三方apk的包名启动类名icon.rar

    这个名为"获取第三方apk的包名启动类名icon.rar"的压缩包文件提供了相关的代码资源,尽管可能并非所有示例都能直接运行,但它们可以作为学习和参考的对象。下面我们将详细探讨这些知识点。 首先,让我们了解如何...

    Jar包问题查找脚本

    此脚本在Jar包中的包名和类名中查找某一关键字,并高亮显示匹配的Jar包名称和路径, 解决问题 多用于定位java.lang.NoClassDefFoundError和java.lang.ClassNotFoundException的问题,以及类版本重复或者冲突的问题等...

    根据class类名在所有Jar包文件中查找class类路径以及jar名字

    1.搜索分析指定路径下所有jar包中是否存在指定文件。譬方说要在jar包中查询某个**.class文件。用户可以不用打开Jar包,直接输入路径和要查找的文件即可搜索。 2.列出指定路径下的所有Jar包文件 3.除了对Jar包进行...

    apk包名类名查看工具.exe

    apk 包名,版本信息查看工具,只在自己电脑win7上用,其他平台没用过

    jarjar-方便Java打包工具,自定义修改jar包包名

    2. **运行jarjar**:通过命令行调用jarjar-1.4.jar,指定规则文件、输入JAR和输出JAR,例如`java -jar jarjar-1.4.jar process rules.txt input.jar output.jar`。 3. **检查结果**:生成的output.jar会按照规则文件...

    Android判断包名和类名是否存在的方法

    下面将详细讲解如何在Android中判断一个包名和类名是否存在。 首先,我们来看如何判断包名是否存在。在Android中,我们可以利用`PackageManager`这个系统服务来获取关于已安装应用的信息。以下是一个示例代码: ``...

    在jar包下找class文件

    在Java开发过程中,`jar`(Java Archive)文件是一种重要的归档格式,它用于集合多个`.class`文件,也就是编译后的Java源代码,形成一个单一的可执行文件。这有助于减少部署应用程序所需的资源数量,并方便分发。当...

    获取手机里面窗口小部件的包名和类名

    用于修改桌面布局时找到对应widget的包名和类名

    android开发辅助工具 抓取包名类名工具

    在Android开发过程中,调试和分析应用的行为至关重要,而"android开发辅助工具 抓取包名类名工具"就是这样一款实用的工具,它专门用于帮助开发者快速获取设备上安装的应用程序的包名和类名信息。这个工具对于进行...

Global site tag (gtag.js) - Google Analytics