python脚本查找java类所属jar包

2022-11-25  本文已影响0人  余很多之很多code

java开发或者服务器日志中偶尔会遇到某个类找不到,或者知道大概的class名字,但是不确定输入哪个jar包,想从本地maven仓库或者私服中查找?

查找某个类所属jar包

#!/usr/bin/python
# -*- coding: utf-8 -*-
#######################################
#文件名: bin_findjar.py
#参数1  jar的路径,支持目录
#参数2  class名字的关键字
########################################
import os
import sys
path=""
if len(sys.argv)>= 3:
    path=sys.argv[1]
    value=sys.argv[2].strip()
else:
    print "参数有误。。。"
    sys.exit()

for d in os.listdir(path):
    if d.endswith("jar"):
        #print "unzip -l "+ path+"/"+d+" | grep "+value
        pipe=os.popen("unzip -l "+ path+"/"+d+" | grep "+value)
        string= pipe.read()
        pipe.close()
        if len(string)<=0:
            pass
        else:
            print "path:"+d
            print string

else:
    pass

运行结果:

./bin_findjar.py ~/.m2/repository/org/yu/util/yuutil/1.0/ DbHelper

path:yuutil-1.0.jar
817 06-29-2017 19:59 org/yu/util/db/DbHelper$1.class
4758 06-29-2017 19:59 org/yu/util/db/DbHelper.class

注意:

脚本在linux和mac下测试通过,windows下建议在cygwin环境下测试。

上一篇 下一篇

猜你喜欢

热点阅读