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包内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 如何将IDEA打成jar包并在windows后台运行

    IDEA打成jar包并在windows后台运行 一.IDEA打成jar包 1.File=>Project Structure=>Project 选择windows中安装的java版本,idea默认使用自己的java环境,需要改为windows中安装的版本,不然后期jar包在windows中运行时会java版本不对的错误. 2.File=>Project Structure=>Artifacts 接着选择main方法 选择完之后出现以下界面,点击"OK" 3.返回

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

    需求说明: java程序打包成jar包 jar包开机自启动 jar包每隔一段时间重启 环境说明 运行环境:win 10 编程环境:IDEA 2019 项目:MAVEN项目 IDEA中打包maven项目 右侧maven–点击package–打包完成 打包完成之后生成jar包,在项目的target文件夹下 定位到该jar包所在目录下,复制或者剪切该jar包 在F盘新建一个文件夹,命名为"startBat",将jar包放在该文件夹中 编写Bat脚本 在jar包的同目录下新建start.bat

  • 详解Centos7下配置Redis并开机自启动

    本篇文章主要介绍了Centos7下配置Redis并开机自启动,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 最近在做作业的时候需要用到Redis缓存,由于每次重启服务器都需要重新启动Redis,也是忒烦人,于是就有了这一篇博客,好,废话不多说. 只有两个步骤: 1.设置redis.conf中daemonize为yes,确保守护进程开启. 2.编写开机自启动脚本 基本原理为: 系统开机启动时会去加载/etc/init.d/下面的脚本,通常而言每个脚本文件会自定义实现程序的启动:若想将新的程序

  • Linux下Redis设置密码及开机自启动

    1.设置Redis.conf中daemonize为yes,确保守护进程开启: 找到#requirepass foorbared这一行,直接替换掉这行,改为requirepass 新密码 2.编写开机自启动脚本 vi /etc/init.d/redis 脚本内容如下: #!/bin/sh #chkconfig: 2345 80 90 # Simple Redis init.d script conceived to work on Linux systems # as it does use of

  • linux 开机自启动redis服务的方法

    [Unit] Description=The redis-server Process Manager Documentation=https://redis.io/ After=network.target [Service] Type=forking ExecStart=/root/redis-5.0.7/src/redis-server /root/redis-5.0.7/redis.conf #有密码则需要在cli后面加 -a "密码" ExecStop=/root/redis

  • java生成jar包的方法

    本文实例讲述了java生成jar包的方法,是非常实用的技巧.分享给大家供大家参考.具体分析如下: 很多Java初学者都会有这样的疑问:Java编写的application程序是否能够最终形成一个类似于exe一样的可执行文件,难道就只能用命令行运行? 通常来说有两种方法,一种是制作一个可执行的JAR文件包,然后就可以像.chm文档一样双击运行了:而另一种是使用JET来进行编译.但是JET是要用钱买的,而且据说JET也不是能把所有的Java程序都编译成执行文件,性能也要打些折扣.所以,使用制作可执行

  • Maven 生成打包可执行jar包的方法步骤

    最近IDEA打可执行Jar包搞了三天,一直失败,好好学习一下Maven-assembly,在此记录一下 1. 需求 项目打包,满足以下要求: 1.整个项目打一个Zip包下面包括应用程序.应用程序依赖的jar包.说明文档 2.项目打的jar包可以执行不同类里的Main函数 3.项目源码打的jar包要与依赖的第三方jar包分开 4.项目里的执行脚本也要一块打包并进行分类 5.document目录下的readme.txt放在压缩包的根目录下,其他的还放在这个目录下 6.打的jar包去掉不需要的目录(文

  • 详解docker部署SpringBoot及替换jar包的方法

    关于docker的安装和使用,可以看看之前这两篇文章.docker kubernetes dashboard安装部署详细介绍和Docker如何使用link建立容器之间的连接.这篇文章主要介绍如何在docker上部署springboot项目.关于如何创建springboot项目可以看看这篇文章IDEA上面搭建一个SpringBoot的web-mvc项目遇到的问题 本文主要介绍docker部署springboot的三种方式,分别是:入门方式.jar包替换部署的方式和脚本部署方式,一步步来手把手教程.

  • Java在制作jar包时引用第三方jar包的方法

    我用的是Eclipse打包,但在CMD窗口执行的时候报"ActiveMQ.jar中没有主清单属性"错误. 在网上搜了下,这个与MANIFEST.MF文件有关,该文件没有定义MAIN方法所在类的路径,利用好压打开jar包,果然如此.里面只有一行 Manifest-Version: 1.0 需添加Main-Class.在本例中,添加如下: Main-Class: com.luoluo.TestUse.activemq.ActiveMQStateMain 上面,有几点需要注意: 1. Mai

  • WinForm调用jar包的方法分析

    本文实例讲述了WinForm调用jar包的方法.分享给大家供大家参考,具体如下: 因为工作需要,需要做一个数据上传的程序,客户规定的是:数据接口采用http连接,采用JSON-RPC轻量级远程调用协议.所以决定用winform做一个管理界面(其中还包括其他的功能),java完成数据的传输,用winform调用jar包来完成客户需求. 具体做法如下(参考至http://www.jb51.net/article/41110.htm,后期我做了一些备注和调整): 一.将已经编译后的java中Class

  • Android Studio 在项目中引用第三方jar包的方法

    在Android Studio项目中引用第三方jar包的方法: 步骤: 1.在build.gradle文件中添加如下代码: 备注:要添加在Android作用域下 sourceSets { main { jniLibs.srcDirs = ['libs'] } } 点击[Sync Now],会生成jniLibs文件夹 找到jniLibs文件夹对应的实体目录,把需要用到的jar包放到该目录下 在build.gradle文件中,在dependencies模块,添加以下代码: compile files

随机推荐