栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java Dependence Analysis(Java静态依赖分析)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java Dependence Analysis(Java静态依赖分析)

前言

在Java项目项目中,经常会面临依赖升级,依赖变更的情况。通常情况下,无法做到全面的检查,java8以上版本自带的jdeps命令可以对依赖进行分析,但受限于JDK的版本,jdeps功能有一定差异,虽然可以检测到类依赖确实,但通常无法检查到方法的缺失。此工具就是为了全面的解决依赖问题,可以提供成员变量类型、方法参数、方法返回值、方法异常捕获、字节码指令中涉及到类和方法的内容的全面检查。
最终通过该工具与jdeps工具的配合,在对项目进行依赖升级后,可以及早的发现项目风险。比如:在处理某一依赖漏洞,只针对某一个依赖升级,关联依赖无法升级的情况。

命令行工具

使用Java8以上版本自带的jdeps也可以进行依赖检查,但是没有那么细致。
在实际使用中,可以将jdeps与该工具协同使用。
JDA源代码地址:https://github.com/lipangeng/Java-Dependence-Analysis

此工具为一个jar文件,通过java -jar的方式运行,并且将异常信息输出至控制台。
示例命令 JDA_DEBUG=false JDA_FILTER='com.*' java -jar jda-0.0.1.jar /Users/lipangeng/Downloads/app-upload/WEB-INF/classes /Users/lipangeng/Downloads/app-upload/WEB-INF/lib/*
环境变量 JDA_DEBUG:控制是否打开Debug
环境变量 JDA_FILTER: Java的正则控制,如果缺失的类满足该正则条件,则会在最后打印报告时打印出来,不满足的条件的一律不打印。
环境变量 JDA_OUT: 默认为result.json,会将结果输出为json文件,并且可以在可视化界面中打开该文件,进行可视化查看,可以通过https://jda.lipg.cn访问。
命令行参数: 为classpath,可以为class文件目录,可以为jar文件,可以以/*结尾,加载目录下全部的jar/zip。

运行效果



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/967357.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号