Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java程序的Cron作业_Java_Eclipse_Jar_Cron - Fatal编程技术网

Java程序的Cron作业

Java程序的Cron作业,java,eclipse,jar,cron,Java,Eclipse,Jar,Cron,我正在使用一个java程序,它在完成一些文件传输后发送电子邮件。我正在使用Eclipse来编写程序。如何设置cron作业以在特定时间执行此java程序。此外,我在项目中有各种jar文件。请建议用于更复杂的需求或更简单的任务 编写一个shell脚本,用必要的 争论 确保classpath参数指向您需要的jar 确保shell脚本具有必要的unix 权限 通过设置cron来计划要调用的脚本 工作 有关cronjob的更多信息,请查看此处 只有我的2美分…有cron4j库。我以前用它来安排一个jav

我正在使用一个java程序,它在完成一些文件传输后发送电子邮件。我正在使用Eclipse来编写程序。如何设置cron作业以在特定时间执行此java程序。此外,我在项目中有各种jar文件。请建议

用于更复杂的需求或更简单的任务

  • 编写一个shell脚本,用必要的 争论
  • 确保classpath参数指向您需要的jar
  • 确保shell脚本具有必要的unix 权限
  • 通过设置cron来计划要调用的脚本 工作
有关cronjob的更多信息,请查看此处


只有我的2美分…

有cron4j库。我以前用它来安排一个java程序每周运行一次。调度语法与crontab相同。问题是,它需要作为后台进程持续运行才能正常工作。我最终只使用了普通的cron,但如果您不是在类Unix系统上,并且没有cron,那么它可能会很有用。

r0ast3d有一个快速、清晰的答案-我确实需要进行更多搜索才能完成每个步骤,因此我将详细介绍他的步骤:

  • 编写一个shell脚本,用必要的参数调用java程序。 例如:

    !/bin/bash
    echo "Running script."
    cd ~/your/classpath/to/java
    java -classpath .:somejar.jar path/to/your/Program
    
    用冒号(:)而不是分号(;)分隔必要的类路径 程序的路径应该从包开始(在java程序的顶部找到)

  • 确保classpath参数指向您需要的jar。 您可以检查java程序中的导入语句,以确保指定了所有必要的类路径。您必须从java目录运行此脚本,并且可以使用单个句点(.)作为第一个类路径参数

  • 确保shell脚本具有必要的unix权限

    从终端运行:
    sudo chmod###yourScript.sh

    其中####是表示系统设置的正确权限的数字

  • 通过设置cron作业来计划要调用的脚本

    从终端运行:
    crontab-e

    这将打开crontab编辑器。您可以通过以下方式添加作业:

    */5****bash/home/scripts/yourScript.sh

    用脚本的正确位置替换脚本的路径。此作业设置为每5分钟运行一次。有关crontab的良好参考,请参阅


  • 希望这能帮到别人

    您正在使用eclipse和有几个JAR的事实有什么关系?如果您知道如何使用java-cp启动应用程序。。。您的.full.ClassName,然后只需像您为任何其他进程所做的那样设置一个cron作业。您是指在持续运行的程序中的作业还是使用OS cron作业启动程序?@JB如果他不知道如何运行他的程序,就可以在eclipse中不单击“运行”按钮的情况下将JAR放在类路径上……正如@JBNizet所指出的,这里的问题是要知道如何从command line.OK运行Java程序。我同意这一点。那他为什么不问:如何启动Java程序?无论如何(对于OP),请阅读基本知识:和