jetty 长时间运行以后出现 PWC6117 file not found

严重: PWC6117: File "%2Ftmp%2Fjetty-0.0.0.0-9090-admin.war-_admin-any-%2Fwebapp%2Ferror%2F404.jsp" not found

出现以上错误,运行下java

bin/jetty.sh check
RUN_CMD        =  /usr/bin/java -Djetty.home=/jetty/jetty-distribution-8.1.6.v20120903 -Djava.io.tmpdir=/tmp -jar

很明显,linux一段时间后会删除tmp文件夹下的文件,致使jetty的异常,file not foundlinux

cat /etc/cron.daily/tmpwatch
rhel6下清理tmp的相关脚本
#! /bin/sh
flags=-umc
/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \
    -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \
    -X '/tmp/hsperfdata_*' 10d /tmp
/usr/sbin/tmpwatch "$flags" 30d /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
    if [ -d "$d" ]; then
    /usr/sbin/tmpwatch "$flags" -f 30d "$d"
    fi
done

能够看到是30d清理一次

 

 

解决办法:web

修改jetty.sh,吧tmpdir指定到系统不会默认清空的文件夹下便可。app

TMPDIR=${TMPDIR:-/jetty/jetty-distribution-8.1.6.v20120903/tmp}

 

若是是java -jar start.jar启动也能够指定tmp目录,命令以下:webapp

java -jar start.jar -Djava.io.tmpdir=tmp

萌萌的IT人,IT人的乐园jsp