将JAVA程序作为计划任务运行

Kev*_*van 14 java windows scheduler

我想在Windows 7机器上每天运行一次简单的JAVA程序.

我的代码在NetBeans中运行良好.如果我做了一个干净的构建它建议:

C:\Program Files\Java\jdk1.7.0/bin/java -jar "C:\Users\User1\Documents\NetBeansProjects\Facebook\dist\Facebook.jar"
Run Code Online (Sandbox Code Playgroud)

当然,由于程序和文件之间的空间,这在DOS提示符下不起作用所以我这样做:

C:\Program Files\Java\jdk1.7.0/bin/java -jar "C:\Users\User1\Documents\NetBeansProjects\Facebook\dist\Facebook.jar" -jar "C:\Users\User1\Documents\NetBeansProjects\Facebook\dist\Facebook.jar"
Run Code Online (Sandbox Code Playgroud)

这适用于DOS提示符.

我现在在Windows Scheduler中创建一个任务来运行:

C:\Program Files\Java\jdk1.7.0/bin/java
Run Code Online (Sandbox Code Playgroud)

带参数:

-jar "C:\Users\User1\Documents\NetBeansProjects\Facebook\dist\Facebook.jar"
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我看到的只是一个DOS框闪烁一秒钟.我希望代码运行大约需要30秒.代码应该将数据持久保存到数据库中,不会发生更新.

代码也使用,java.util.logging所以我应该看到日志条目,我不这样做.

我强烈怀疑我没有正确运行JAVA命令,或者当从DOS提示符运行时通过调度程序运行时出现错误的类路径问题.

帮助将不胜感激.如果您之前已经看过这个并且可以对它进行排序那么会很棒.如果您可以告诉我如何从Scheduler获取有意义的错误跟踪,那么这也非常有用.

谢谢!

ale*_*oot 16

我认为您可以创建一个简单的批处理脚本,以这种方式启动您的程序:

@echo off
REM Eventually change directory to the program directory 
cd C:\Users\User1\Documents\NetBeansProjects\Facebook\dist\
REM run the program
"C:\Program Files\Java\jdk1.7.0\bin\java.exe" -jar "C:\Users\User1\Documents\NetBeansProjects\Facebook\dist\Facebook.jar"
Run Code Online (Sandbox Code Playgroud)

将其复制到记事本中并保存为java_script.cmd,然后直接安排此脚本而不是程序.