你是一个java程序员,请用java8实现一个定时任务,每隔指定时间比如5分钟执行一次,最终该定时任务要做成一个可执行jar,间隔执行时间可以在运行的时候指定。
时间: 2024-04-12 19:28:26 浏览: 110
当然可以!以下是使用Java 8实现定时任务的示例代码:
```java
import java.util.Timer;
import java.util.TimerTask;
public class TimerTaskExample {
public static void main(String[] args) {
// 获取间隔执行时间(以分钟为单位)
int intervalMinutes = Integer.parseInt(args[0]);
// 创建定时器
Timer timer = new Timer();
// 创建定时任务
TimerTask task = new TimerTask() {
public void run() {
// 在这里编写任务执行的代码
System.out.println("执行定时任务!");
}
};
// 计算间隔执行时间(以毫秒为单位)
long intervalMillis = intervalMinutes * 60 * 1000;
// 设置定时任务的首次执行时间为当前时间,间隔执行时间为指定的间隔时间
timer.schedule(task, 0, intervalMillis);
}
}
```
在上述代码中,我们通过获取命令行参数来设置定时任务的间隔执行时间。然后,我们创建一个定时器对象和一个定时任务对象,并通过`timer.schedule()`方法来设置定时任务的首次执行时间和间隔执行时间。
接下来,你可以使用Java 8的工具来将该代码编译为可执行的JAR文件。确保你的代码文件名为`TimerTaskExample.java`,然后在命令行中使用以下命令编译代码:
```
javac TimerTaskExample.java
```
编译成功后,使用以下命令创建可执行的JAR文件:
```
jar cvfe TimerTaskExample.jar TimerTaskExample *.class
```
现在,你可以通过以下命令运行该可执行JAR文件,并指定间隔执行时间:
```
java -jar TimerTaskExample.jar 5
```
这将使定时任务每隔5分钟执行一次。你可以根据需要修改代码和运行参数来满足你的要求。希望能对你有所帮助!
阅读全文