最近遇到个问题很奇葩
用shell调用java jar包 jar包是个简单的post请求 通过shell传入参数
java -Xbootclasspath/p:path -jar youtest.jar 参数1 参数2
Xbootclasspath 是预先加载的claspath路径
本地手动运行脚本能够正常发送post请求
但是添加crontab任务 定时运行的时候发现 java代码无法读取环境变量 抛异常 始终无法正常运行
vim /etc/profile 查看环境变量 也是有的
没理由啊 应该能读取的到环境变量 手动的是可以运行 但是定时的不行很奇怪
最后发现
在定时任务的前面需要加上 source /etc/profile 才可以 这样定时任务就正常起来了 定时任务如果涉及到环境变量很重要啊
*/5 * * * * source /etc/profile && /xxx/task.sh 2>&1