如何区分jar包中的class文件是属于自己的还是属于自己的依赖?

问题描述 投票:0回答:0

我正在研究一些 jar 并通过分析字节码文件来构建调用图。我只想分析属于jar包本身的类文件,而不是它的依赖

Maven中央仓库并没有规定上传的jar包一定要有它的依赖,jar包里面的类文件也不是一直按照groupId和artifactId组织的。

例如,我从[Maven Central Repository] (https://search.maven.org/)下载antisamy-1.5.3.jar。它的 ID 是org.owasp.antisamy:antisamy:1.5.3。下图是这个jar包的目录组织结构。 enter image description here 我们可以看到class文件所在的路径没有groupId和artifactId前缀

还有一个名为 org.apache.sling.xss-2.0.0.jar 的 id 为 org.apache.sling:org.apache.sling.xss:2.0.0 的另一个 expamle。它看起来像这个 jar包包含许多来自其依赖项的类文件。 enter image description here

有谁知道如何将它们与其依赖类文件区分开来吗?

非常感谢!

java maven jar dependencies
© www.soinside.com 2019 - 2024. All rights reserved.