Shell 未设置JAVA_主页

Shell 未设置JAVA_主页,shell,java-home,Shell,Java Home,我设置了一个crontab作业来运行php脚本, php~/Documents/workspace/tools/src/main/php/testcron.php>mylog 日志文件显示: 未设置JAVA_主页 我试着出口,看到了 JAVA_HOME=/Library/JAVA/HOME 我把它改为JAVA_HOME=/usr/bin,但是如果我打开另一个终端,它仍然显示为“Library/JAVA/HOME”,并且如果我在更改JAVA_HOME的同一个终端上运行php脚本,它也会抱怨找不到J

我设置了一个crontab作业来运行php脚本, php~/Documents/workspace/tools/src/main/php/testcron.php>mylog

日志文件显示: 未设置JAVA_主页

我试着出口,看到了 JAVA_HOME=/Library/JAVA/HOME


我把它改为JAVA_HOME=/usr/bin,但是如果我打开另一个终端,它仍然显示为“Library/JAVA/HOME”,并且如果我在更改JAVA_HOME的同一个终端上运行php脚本,它也会抱怨找不到JAVA_HOME,有人知道出了什么问题吗?谢谢im使用Mac

您应该在PHP脚本的开头或cron定义中指定JAVA_HOME,如下所示:*****导出JAVA_HOME=/usr/bin~/Documents/workspace/tools/src/main/php/testcron.php>mylog

您最好以持久的方式设置环境变量。我不习惯Mac,所以我不能告诉你怎么做,但在Linux中,你可以在shell命令的配置文件中设置它,比如crontab add中的~/.bashrc或~/.zshrc

05 * * * * /YOUR_PATH/start.sh > /dev/null 2>&1
在start.sh中,添加最重要的内容

export JAVA_HOME=/usr/local/java;
Where/usr/local/java是java所在的位置。 您可以使用whereisjava命令来简化您的java。 我建议您始终使用绝对路径

注意:此命令每天每5分钟启动一次