日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux定时任务生产java服务无法执行问题群友案例

發(fā)布時(shí)間:2025/3/8 linux 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux定时任务生产java服务无法执行问题群友案例 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.


linux定時(shí)任務(wù)crond export變量問題群友案例

來自網(wǎng)友兄弟 北京@Grady(254553457) 的總結(jié)。

1)我寫了一個(gè)重啟resin的腳本,由于業(yè)務(wù)原因,需要定時(shí)在某一個(gè)時(shí)間重啟下resin服務(wù)器,于是就在
crontab里配置了如下內(nèi)容:
50 17 * * 1-5 root /usr/local/bin/resin_restart.sh
其中,resin_restart.sh內(nèi)容如下:
#!/bin/sh
/usr/local/bin/xxresin_stop.sh
/usr/local/bin/xxresin_start.sh

2)有問題的時(shí)刻到來了,服務(wù)器雖然定時(shí)起來了,但是卻報(bào)了如下錯誤:
Resin can't load com.sun.tools.javac.Main.? Usually this means that the JDK tools.jar is missing from the classpath,
possibly because of using a JRE instead of the JDK.?
You can either add tools.jar to the classpath or change the compiler to an external one with <java compiler='javac'/> or jikes.
但是,明明已經(jīng)在profile里配置了環(huán)境變量,為啥還找不到呢。折騰了需求沒有搞定。

3)后來在QQ交流群114580181,找到了熱心下老男孩老師,并請教,得到的回答是:
由于export變量問題導(dǎo)致:具體為,crontab執(zhí)行shell時(shí)只能識別為數(shù)不多的系統(tǒng)環(huán)境變量,
普通環(huán)境變量一般是無法識別的,如果在編寫的腳本中需要使用變量,最好使用export重新聲明下該變量,
以確保腳本正確執(zhí)行。以后作為一個(gè)開發(fā)基本規(guī)范寫上。
------------------------
4)然后我在resin重啟腳本里重新定義了下環(huán)境變量,腳本如下:
#!/bin/sh
#下面就是環(huán)境變量定義
JAVA_HOME="/opt/jdk1.6.0_18"
CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:/opt/nginx-0.7.61/sbin:/opt/jdk1.6.0_18/bin:/opt/resin-3.0.25/bin:$PATH
export JAVA_HOME PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC CLASSPATH
/usr/local/bin/xxresin_stop.sh
/usr/local/bin/xxresin_start.sh

5)經(jīng)過測試,定時(shí)任務(wù)此時(shí)順利重啟,在這里非常感謝老男孩老師給與的支持。

?

總結(jié)

以上是生活随笔為你收集整理的linux定时任务生产java服务无法执行问题群友案例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。