win10下定時(shí)運(yùn)行與開機(jī)自啟動(dòng)jar包的方法記錄
需求說明:
- java程序打包成jar包
- jar包開機(jī)自啟動(dòng)
- jar包每隔一段時(shí)間重啟
環(huán)境說明
- 運(yùn)行環(huán)境:win 10
- 編程環(huán)境:IDEA 2019
- 項(xiàng)目:MAVEN項(xiàng)目
IDEA中打包maven項(xiàng)目
右側(cè)maven–點(diǎn)擊package–打包完成
打包完成之后生成jar包,在項(xiàng)目的target文件夾下
定位到該jar包所在目錄下,復(fù)制或者剪切該jar包
在F盤新建一個(gè)文件夾,命名為"startBat",將jar包放在該文件夾中
編寫B(tài)at腳本
在jar包的同目錄下新建start.bat,然后編輯,輸入以下內(nèi)容:
@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
我這里程序運(yùn)行的端口是8085,所以set port=8085
循環(huán)地去讀取端口,如果找到端口8085,查詢對(duì)應(yīng)的PID是否存在,如果存在,則殺死(taskkill /pid)
殺死當(dāng)前進(jìn)程后,再重新啟動(dòng)(start) jar包 即可。
這樣就完成了重啟jar包及相關(guān)服務(wù)的工作了
創(chuàng)建定時(shí)任務(wù)
1.找到“我的電腦”,右鍵——“管理”,找到“系統(tǒng)工具”——“任務(wù)計(jì)劃程序”。
開始“創(chuàng)建基礎(chǔ)任務(wù)”,如圖。
根據(jù)向?qū)钕嚓P(guān)信息即可。需要注意的點(diǎn)在于觸發(fā)器設(shè)置。其他根據(jù)需要進(jìn)行設(shè)置。
例如設(shè)置程序在每天每隔一小時(shí)啟動(dòng)一次Bat腳本
選擇“每天”,每日,設(shè)定開始時(shí)間和時(shí)間間隔。
下一步,設(shè)置操作,選擇“啟動(dòng)程序”
下一步,設(shè)定啟動(dòng)程序,“瀏覽”,添加剛才的Bat腳本即可
完成!
接著在“程序任務(wù)庫”中就可以找到我們剛新建的定時(shí)任務(wù)了,如圖。
雙擊,對(duì)該任務(wù)進(jìn)行編輯,定位到“觸發(fā)器”,點(diǎn)擊編輯,如圖。
因?yàn)橐獙?shí)現(xiàn)每隔一小時(shí)重復(fù)運(yùn)行該腳本的目的,所以我們勾選“重復(fù)任務(wù)間隔”,并設(shè)置間隔時(shí)間為1小時(shí)。
由于每次運(yùn)行完最好是關(guān)閉再運(yùn)行java程序,所以我們還需勾選“重復(fù)持續(xù)時(shí)間結(jié)束時(shí)停止所有運(yùn)行的任務(wù)”
點(diǎn)擊“確定”,完成設(shè)置。
檢驗(yàn)定時(shí)任務(wù)的運(yùn)行
設(shè)置完之后,程序沒有立刻運(yùn)行,而是在下一個(gè)設(shè)定好的時(shí)間節(jié)點(diǎn)開始運(yùn)行,這里可以等待定時(shí)器執(zhí)行定時(shí)任務(wù)。
當(dāng)然最好的話,可以在原來的java程序中編寫生成日志文件的代碼,每當(dāng)程序運(yùn)行,就生成一個(gè)日志文件,用以記錄程序運(yùn)行的情況。
——————————分割線——————————————————————
jar包開機(jī)重啟
在同目錄下新建文件start.vbs,寫入以下代碼
createobject("wscript.shell").run"F:\startBat\start.bat",0
即用shell腳本運(yùn)行F盤startBat文件夾下的start.bat腳本(就是上述步驟新建好的腳本文件)
命令的最后一個(gè)“0”代表隱藏窗口運(yùn)行
創(chuàng)建開機(jī)啟動(dòng)的快捷方式
右鍵創(chuàng)建start.vbs的快捷方式,并將該快捷方式復(fù)制到目錄
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
重啟系統(tǒng),就會(huì)發(fā)現(xiàn)jar包自動(dòng)重啟并運(yùn)行。
寫在最后
最終目錄結(jié)構(gòu)如圖所示
參考博客
到此這篇關(guān)于win10下定時(shí)運(yùn)行與開機(jī)自啟動(dòng)jar包的文章就介紹到這了,更多相關(guān)win10定時(shí)運(yùn)行與開機(jī)自啟動(dòng)jar包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot多模塊打包部署Docker的項(xiàng)目實(shí)戰(zhàn)
本文通過介紹最常見的Maven管理的Spring Boot項(xiàng)目多模塊打包部署Docker來介紹一下項(xiàng)目部署過程中操作流程和幾個(gè)需要注意的點(diǎn),具有一定的參加價(jià)值,感興趣的可以了解一下2023-08-08簡(jiǎn)單實(shí)現(xiàn)Spring的IOC原理詳解
這篇文章主要介紹了簡(jiǎn)單實(shí)現(xiàn)Spring的IOC原理詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12java實(shí)現(xiàn)簡(jiǎn)單汽車租賃系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)單汽車租賃系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-01-01SpringBoot+Vue前后端分離實(shí)現(xiàn)審核功能的示例
在實(shí)際開發(fā)中,審核功能是一個(gè)非常常用的功能,本文就來介紹一下使用SpringBoot+Vue前后端分離實(shí)現(xiàn)審核功能的示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02java使用poi在excel單元格添加超鏈接設(shè)置字體顏色的方法
這篇文章主要介紹了java使用poi在excel單元格添加超鏈接,設(shè)置字體顏色,poi功能還是很強(qiáng)大的,基本能想到的功能都能通過poi實(shí)現(xiàn),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-09-09JDBC中Statement和Preparement的使用講解
今天小編就為大家分享一篇關(guān)于JDBC中Statement和Preparement的使用講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01使用Spring方法攔截器MethodInterceptor
這篇文章主要介紹了使用Spring方法攔截器MethodInterceptor,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10