Can be helpful with CASSANDRA-1888 On 21 December 2010 22:41, Stephen Connolly <stephen.alan.conno...@gmail.com > wrote:
> #!/bin/bash > > if [ $# != 2 ] ; then > echo "Syntax: $0 name1.jar name2.jar" > exit > fi > > if diff $1 $2 ; then > echo Files are identical > exit 0 > fi > > work=$(mktemp -d) > > mkdir -p "$work/a" > mkdir -p "$work/b" > > cwd="$(pwd)" > > cd "$work/a" > unzip "$cwd/$1" | sort > "$work/a.list" > cd "$work/b" > unzip "$cwd/$2" | sort > "$work/b.list" > cd "$work" > > if ! diff a.list b.list > diff.list ; then echo "Contents"; echo =====; cat > diff.list; echo ""; echo "Contents are different" > summary; fi > > for class in $(find a -name \*.class | sed -e > "s:^\\a/::;s:\\.class$::;s:/:.:g"); do javap -c -classpath a $class > > a.javap; javap -c -classpath b $class > b.javap; if ! diff a.javap b.javap > > diff.javap ; then echo $class; echo =====; cat diff.javap; echo ""; echo > $class >> summary; fi; done > > if [ -f summary ]; then > echo "Summary" > echo "=======" > cat summary > else > echo "File contents are identical" > fi > > cd "$cwd" > rm -rf "$work" > >