以下の内容はhttps://unageanu.hatenablog.com/entry/20091225/1261749402より取得しました。


クラスファイルを比較するスクリプト

Javaのクラスファイルを比較するスクリプトを作りました。

  • 引数で指定したディレクトリx2内のクラスファイルを再帰的に探索し、
  • javapで解析。
  • 解析結果をdiffで比較する。

というものです。

#!/bin/bash

javap_r() {
  mkdir $1
  for file in `find $2 -name "*.class"`; do
    javap_file=`echo $file | sed -e "s/${2//\//\\\/}/${1//\//\\\/}\//"`
    mkdir -p ${javap_file%/*}
    class=`echo ${file//\//.} | sed -e "s/${2//\//\.}//"`
    javap -classpath $2 -c ${class%.*} > $javap_file
    echo "javap $file to $javap_file"
  done
}

rm -rf "./a"
rm -rf "./b"
javap_r "./a" $1
javap_r "./b" $2
diff -r ./a ./b

使い方は以下。

$ ./class_diff.sh <クラスファイル置き場1> <クラスファイル置き場2>

実行時にはjavapがPATHに通っている必要があるので、その点のみご注意。




以上の内容はhttps://unageanu.hatenablog.com/entry/20091225/1261749402より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14