Java 查找类名冲突、jar文件版本差异和冗余

Java 查找类名冲突、jar文件版本差异和冗余,java,class,loading,conflict,Java,Class,Loading,Conflict,大多数时候,开发人员将很难调试与类加载问题相关的问题,原因如下 一,。类路径可能有两个不同的JAR,同一个类具有不同的版本。 2.类加载问题 尽管我们可以使用jar实用程序来深入研究每个jar,但它将是非常乏味和容易出错的 是否有一种工具或某种机制来解决此类问题。 尽管类加载在现实中并不简单,但可以说weblogic将如何加载特定ear文件的类。试一试,它在ant和maven中都能工作: 该工具将为您提供可以帮助您的报告 确定JAR文件之间的依赖关系 从类路径中查找缺少的类 发现类/包是否位于

大多数时候,开发人员将很难调试与类加载问题相关的问题,原因如下

一,。类路径可能有两个不同的JAR,同一个类具有不同的版本。 2.类加载问题

尽管我们可以使用jar实用程序来深入研究每个jar,但它将是非常乏味和容易出错的

是否有一种工具或某种机制来解决此类问题。 尽管类加载在现实中并不简单,但可以说weblogic将如何加载特定ear文件的类。

试一试,它在ant和maven中都能工作:

该工具将为您提供可以帮助您的报告

  • 确定JAR文件之间的依赖关系
  • 从类路径中查找缺少的类
  • 发现类/包是否位于多个JAR文件中
  • 如果同一个JAR文件位于多个位置,则为Spot
  • 包含每个JAR文件需要和提供的内容的列表
  • 验证类的SerialVersionId
  • 查找具有不同版本号的类似JAR文件
  • 查找没有版本号的JAR文件
  • 查找未使用的JAR档案
  • 识别密封/签名的JAR档案
  • 在JAR文件中查找类
  • 获取项目的OSGi状态
  • 删除黑名单API使用

我发现在详细模式下运行Java对于解决类路径错误非常方便

它将显示程序正在加载哪些类和JAR


不使用调试程序而尝试解决问题可能是快速的第一步。

我当然会尝试:)。。。第一次看“tattletale”时,它似乎只能显示对某些罐子(如果不是全部的话)的依赖性。如果你是说某些罐子不是ear、war和rar文件,这是因为它们还没有添加对它们的支持。您可以访问issues.jboss.org。问题id为TTALE-11、TTALE-12、TTALE-13,但目前尚未安排。