在Jar包中查找Java类的小工具

今天在维护一个遗留了很久很久的用Java开发的系统的时候,在做了一些修改后,报了一个类找不到,由于这个系统实在是上了年纪了,里面很多类估计都有二十多岁了,实在不知道这个类是在哪个包里,于是乎想到能不能写个工具来查找,所以今天写了一个小代码,专门干这个事,记录一下也许以后还用得着。

文件名:find_class.sh

#!/bin/sh

find_dir=$1
find_key=$2

jars=`find $find_dir -name '*.jar'`
for jar in $jars
do
    ret=`jar tvf $jar | grep $find_key`
    if [ "$?" = "0" ]; then
        ret=`echo $ret | awk '{print $8}'`
        echo -e "\e[1;34m${jar}\e[0m: \e[2;34m${ret}\e[0m"
    fi
done

wars=`find $find_dir -name '*.war'`
for war in $wars
do
    ret=`jar tvf $war | grep $find_key`
    if [ "$?" = "0" ]; then
        ret=`echo $ret | awk '{print $8}'`
        echo -e "\e[1;34m${war}\e[0m: \e[2;34m${ret}\e[0m"
    fi
done

使用方法:

./find_class.sh <dir_path> <class_name>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CSDN技术头条

实战小程序网上商城

最早小程序在微信平台上成名,手握 10 亿月活用户的微信,很快成为小程序创业者的掘金之地。巨头的嗅觉敏锐,支付宝、百度随即跟进,今日头条也开始内测小程序,几大平...

96440
来自专栏即时通讯技术

微信团队分享:Kotlin渐被认可,Android版微信的技术尝鲜之旅1、引言2、概述3、“烹饪”准备4、“烹饪”过程5、开锅,上菜6、如何更好地了解Kotlin这种食材的味道附录:QQ、微信团队原创

本文由微信开发团队工程是由“oneliang”原创发表于WeMobileDev公众号,内容稍有改动。

13450
来自专栏老九学堂

2018年11月TIOBE编程语言排行榜,Java仍然占据排行榜第一

每月的编程语言一出,我们都会发现,Java总是稳稳的占据榜首,JAVA不可撼动的江湖地位,让我们对于Java的学习更加有信心,对于Java未来的发展充满着无限的...

14730
来自专栏行者常至

linux 安装jenkins

32010
来自专栏行者常至

ubuntu 安装 jdk8

1.2K50
来自专栏算法修养

LeetCode 135 Candy

12010
来自专栏用户画像

剑指offer 反转链表

10540
来自专栏web编程技术分享

【PHP快速入门】 第一节 php开发环境的配置

这是一个简单,而且免费的PHP教程。 第一节,说一说如何安装PHP的开发环境。为了方便起见,可以直接安装xampp即可。 首先,去百度上搜索xampp,随便...

14130
来自专栏栗霖积跬步之旅

深入理解java虚拟机-第二章:java内存区域与内存泄露异常

java将内存的管理(主要是回收工作),交由jvm管理,确实很省事,但是一点jvm因内存出现问题,排查起来将会很困难,为了能够成为独当一面的大牛呢,自然要了解...

12420
来自专栏别先生

使用kettle来根据时间戳或者批次号来批量导入数据,达到增量的效果。

1、Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。下载图形化界面的zip包格式的,直...

33310

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励