java - 在 UNIX 中通过 crontab 安排作业

标签 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 文件,那么 java 程序就会成功执行。 我写了一个 cronjob 每分钟执行一次

* * * * * /home/ashutosh/Documents/javaPractice/temp.sh >> /var/log/myjob.log 2>&1

现在在我的日志中显示

could not load main class java 

我不知道问题出在哪里。我尝试过给出 java 文件的绝对路径,但没有任何帮助。帮助我。

谢谢

最佳答案

您的问题是 cronjob 的工作目录不是您的类所在的目录。因此,在脚本中添加 cd the_right_directory 或使用 java -cp some_directory Hello

之类的内容更改 java 的类路径

关于java - 在 UNIX 中通过 crontab 安排作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26293067/

相关文章:

bash - 带有空白/空 grep 的 Do 语句返回时?

bash - 在 tar 发生之前重命名目录名称

java - 为 Spring Locale Interceptor 定义默认语言环境并处理异常

java - 让 Eclipse 识别新的源文件夹

java - 用于 IIS 集成 Windows 身份验证 (NTLM) 的 JAX-WS 客户端

linux - 在 bash 中的管道命令序列中执行条件命令

python - 如何让程序放弃对终端的控制?

linux - 用于查找第 n 次出现的字符串并打印行号的 shell 脚本

shell - Eval 命令在控制台上抛出日志 - 如何抑制它?

java - 如何将一个节点与Java中的下一个节点链接起来