异常:
1.java.lang.IllegalStateException: java.io.EOFException
2.classNoFoundException
复现:
使用jenkins部署jar包时只使用kill-9进行停止命令
原因:
最后发现是序列化异常.追查原因是因为自己的jenkins启动的时候没有杀死原来的程序…然后启动新的程序端口冲突
导致接口访问的时候序列化异常,因为序列化的还是老的对象.所以报错…
停止命令只使用了kill-9 或 kill-15
解决:
先使用kill-15后使用kill-9保证完全停止
停止命令:
APP_NAME="my-test.jar"
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -15 $tpid
fi
sleep 2
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Kill Process!'
kill -9 $tpid
else
echo 'Stop Success!'
fi
启动命令
nohup java -Xms512m -Xmx1024m -jar -Djasypt.encryptor.password=${JASYPT_PASSWORD} sangfor-csw.jar