java

javap - java version확인

gonGon 2019. 8. 13. 21:52

@class 파일로부터 java 버전을 확인하는 방법


javap -verbose {CLASS_NAME} |grep 'major version' 

major version : 50 //java1.6
major version : 51 //java1.7
major version : 52 //java1.8





@응용
- class파일 목록을 만들고 version확인하기.

1) 목록 만들기
find [.|/../WEB-INF] -type f -name '*.class' > ./classes.list



2) version 확인
for c in `classes.list`
do

STR1=`javap -verbose ${c} |grep 'major version'`     //결과를 변수로 받아서
echo -c "$e\t$STR1"                                  //tab구분자로 출력하기

done


3) 1+2

find [.|/../WEB-INF] -type f -name '*.class' > ./classes.list &    //background

BACK_PID=$!

wait $BACK_PID    //끝날 때까지 대기


for c in `classes.list`

do

STR1=`javap -verbose ${c} |grep 'major version'`
echo -c "$e\t$STR1"  >> ./version.out                //version.out에 출력

done


cf) linux script.