win10下定时运行与开机自启动jar包的方法记录

 更新时间:2020年11月27日 12:19:01   作者:爱学习的诸葛铁锤  
这篇文章主要给大家介绍了关于win10下定时运行与开机自启动jar包的相关资料,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

需求说明:

  1. java程序打包成jar包
  2. jar包开机自启动
  3. jar包每隔一段时间重启

环境说明

  1. 运行环境:win 10
  2. 编程环境:IDEA 2019
  3. 项目:MAVEN项目

IDEA中打包maven项目

右侧maven–点击package–打包完成

打包完成之后生成jar包,在项目的target文件夹下

定位到该jar包所在目录下,复制或者剪切该jar包

在F盘新建一个文件夹,命名为"startBat",将jar包放在该文件夹中

编写Bat脚本

在jar包的同目录下新建start.bat,然后编辑,输入以下内容:

@echo off
set port=8085
for /f "tokens=1-5" %%i in ('netstat -ano^|findstr ":%port%"') do (
 echo kill the process %%m who use the port 
 taskkill /pid %%m -t -f
 goto start
)
:start
 
START "thymedemo" javaw -jar thymedemo-0.0.1-SNAPSHOT.jar

我这里程序运行的端口是8085,所以set port=8085

循环地去读取端口,如果找到端口8085,查询对应的PID是否存在,如果存在,则杀死(taskkill /pid)

杀死当前进程后,再重新启动(start) jar包 即可。

这样就完成了重启jar包及相关服务的工作了

创建定时任务

1.找到“我的电脑”,右键——“管理”,找到“系统工具”——“任务计划程序”。

开始“创建基础任务”,如图。

根据向导填相关信息即可。需要注意的点在于触发器设置。其他根据需要进行设置。

例如设置程序在每天每隔一小时启动一次Bat脚本

选择“每天”,每日,设定开始时间和时间间隔。

下一步,设置操作,选择“启动程序”

下一步,设定启动程序,“浏览”,添加刚才的Bat脚本即可

完成!

接着在“程序任务库”中就可以找到我们刚新建的定时任务了,如图。

双击,对该任务进行编辑,定位到“触发器”,点击编辑,如图。

因为要实现每隔一小时重复运行该脚本的目的,所以我们勾选“重复任务间隔”,并设置间隔时间为1小时。

由于每次运行完最好是关闭再运行java程序,所以我们还需勾选“重复持续时间结束时停止所有运行的任务”

点击“确定”,完成设置。

检验定时任务的运行

设置完之后,程序没有立刻运行,而是在下一个设定好的时间节点开始运行,这里可以等待定时器执行定时任务。

当然最好的话,可以在原来的java程序中编写生成日志文件的代码,每当程序运行,就生成一个日志文件,用以记录程序运行的情况。

——————————分割线——————————————————————

 jar包开机重启

在同目录下新建文件start.vbs,写入以下代码

createobject("wscript.shell").run"F:\startBat\start.bat",0

即用shell脚本运行F盘startBat文件夹下的start.bat脚本(就是上述步骤新建好的脚本文件)

命令的最后一个“0”代表隐藏窗口运行

创建开机启动的快捷方式

右键创建start.vbs的快捷方式,并将该快捷方式复制到目录

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

重启系统,就会发现jar包自动重启并运行。

写在最后

最终目录结构如图所示

参考博客

  • jar包开机自动重启: link.
  • 定时器配置执行jar包: link.
  • win10 Bat脚本重启jar包: link.

到此这篇关于win10下定时运行与开机自启动jar包的文章就介绍到这了,更多相关win10定时运行与开机自启动jar包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java 字符串相减(很简单的一个方法)

    java 字符串相减(很简单的一个方法)

    本篇文章是对java中关于字符串相减的一个简单的方法进行了介绍,需要的朋友参考下
    2013-07-07
  • Java面试必问之ThreadLocal终极篇分享

    Java面试必问之ThreadLocal终极篇分享

    ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是thread local variable(线程局部变量),这篇文章主要给大家介绍了关于Java面试必问之ThreadLocal终极篇的相关资料,需要的朋友可以参考下
    2021-10-10
  • Java object wait notify notifyAll代码解析

    Java object wait notify notifyAll代码解析

    这篇文章主要介绍了Java object wait notify notifyAll代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Java中String类常用方法总结详解

    Java中String类常用方法总结详解

    String类是一个很常用的类,是Java语言的核心类,用来保存代码中的字符串常量的,并且封装了很多操作字符串的方法。本文为大家总结了一些String类常用方法的使用,感兴趣的可以了解一下
    2022-08-08
  • spring mybatis环境常量与枚举转换示例详解

    spring mybatis环境常量与枚举转换示例详解

    这篇文章主要为大家介绍了spring mybatis环境常量与枚举转换示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 整理总结Java多线程程序编写的要点

    整理总结Java多线程程序编写的要点

    这篇文章主要介绍了Java多线程程序编写的要点,包括线程的状态控制和优先级以及线程的通信问题等方面,非常之全面!需要的朋友可以参考下
    2016-01-01
  • JAVA后端应该学什么技术

    JAVA后端应该学什么技术

    这篇文章主要介绍了JAVA后端应该学什么技术,对JAVA感兴趣的同学,可以规划一下
    2021-04-04
  • java多线程创建及线程安全详解

    java多线程创建及线程安全详解

    多线程是日常开发中的常用知识,也是难用知识。通这篇文章主要给大家介绍了关于java多线程创建及线程安全的相关资料,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • spring之Bean的生命周期详解

    spring之Bean的生命周期详解

    本篇文章主要介绍了spring之Bean的生命周期详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • linux下idea、pycharm等输入中文拼音时满3个字母后无法继续拼音输入的问题

    linux下idea、pycharm等输入中文拼音时满3个字母后无法继续拼音输入的问题

    这篇文章主要介绍了linux下idea、pycharm等输入中文拼音时满3个字母后无法继续拼音输入的问题,本文通过图文并茂的形式给大家分享解决方法,需要的朋友可以参考下
    2021-04-04

最新评论