#!/bin/bash _m2_find_jar_class_to_name() { sed 's,.class$,,;s,/,.,g' } _m2_find_jar_match_class() { local arg=${1} ; shift local jar for jar in ${*} ; do jar tf ${jar} | grep ${arg} | _m2_find_jar_class_to_name done | sort -u } _m2_find_jar_hunt() { local arg=${1} ; shift if [ "" = "${*}" ] ; then echo could not find ${arg} else echo search for ${arg} in ${*} javap -classpath $( echo ${*} | tr ' ' ':' ) $( _m2_find_jar_match_class ${arg} ${*} ) fi } _m2_find_jar_main() { local m2_out="m2_cp.txt" if [ ! -f "${m2_out}" ] ; then m2_cp.sh fi if [ -f "${m2_out}" ] ; then local arg for arg in ${*} ; do _m2_find_jar_hunt ${arg} $( grep -l ${arg} $( cat ${m2_out} | tr ':' ' ' ) 2> /dev/null ) done else echo "some problem with m2_cp.sh?" fi } _m2_find_jar_main ${*}