Java 通过crontab在unix中计划作业
我创建了一个简单的java程序来打印“Hello world”。代码如下Java 通过crontab在unix中计划作业,java,shell,unix,ubuntu,cron,Java,Shell,Unix,Ubuntu,Cron,我创建了一个简单的java程序来打印“Hello world”。代码如下 public class Hello { public static void main(String[] args) { System.out.println("Hello world!"); } } 类已编译,并且它位于同一目录中。 在同一个目录中,我创建了一个名为temp.sh的shell文件,其中包含命令 java Hello 现在,如果我执行这个shell文件,那么jav
public class Hello {
public static void main(String[] args) {
System.out.println("Hello world!");
}
}
类已编译,并且它位于同一目录中。
在同一个目录中,我创建了一个名为temp.sh的shell文件,其中包含命令
java Hello
现在,如果我执行这个shell文件,那么java程序将成功执行。
我已经写了一个cronjob来每分钟执行它
* * * * * /home/ashutosh/Documents/javaPractice/temp.sh >> /var/log/myjob.log 2>&1
现在在我的日志中,它正在显示
could not load main class java
我不知道是什么问题。我试图给出java文件的绝对路径,但没有任何帮助。帮帮我
谢谢使用
java-cp./Hello
运行程序-cp./
将当前目录添加到类路径。在此处查看并查看此示例您应该在脚本文件中设置环境变量,类似于类路径。或者在运行脚本之前先配置source.profile。请参阅。内部温度。尝试使用完整路径:
java /home/ashutosh/Documents/javaPractice/Hello
您的问题是cronjob的工作目录不是类所在的目录。因此,在脚本中添加一张
cd,或者使用类似java-cp some\u directory Hello
的内容更改java的类路径