如何讓W(xué)in10實現(xiàn)Java文件的開機自啟動
一、問題描述
隨著入了Win10的坑,發(fā)現(xiàn)它最不能讓人忍受的一點就是強制系統(tǒng)更新,而且系統(tǒng)更新之頻繁,簡直不能忍。這就導(dǎo)致,對于一些想要一直運行的Java文件,就會造成每次系統(tǒng)更新之后的重啟導(dǎo)致Java文件無法繼續(xù)運行。
也有很多博客解決這個問題:創(chuàng)建一個bat文件,將快捷方式放到C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp目錄下,這個方式需要用戶登錄才能自啟動,不行;
利用Instsrv.exe(可以給系統(tǒng)安裝和刪除服務(wù))、Srvany.exe(可以讓程序以服務(wù)的方式運行),看到這,就不想試了,太麻煩。
本文就以很簡單的程序為例,來實現(xiàn)解決這個問題的過程?。。?/p>
二、問題解決
問題解決的途徑是創(chuàng)建計算機任務(wù)計劃程序。
三、準備工作
例如:需要實現(xiàn)下面文件(CSDN.java)的開機啟動。
import java.io.*; /** * Created by Yngz_Miao on 2019/6/14. */ public class CSDN { public static void main(String[] args) { Writer wo = null; try { wo = new FileWriter("loginfo.log"); wo.write("Hello World!\r\n"); wo.flush(); } catch (IOException e) { e.printStackTrace(); } } }
主要邏輯就是,在當(dāng)前目錄查找loginfo.log文件,如果不存在就重新創(chuàng)建一個。然后在該文件中寫入Hello World!。邏輯很簡單。
我們?nèi)绾蝸磉\行這個java文件呢?在當(dāng)前目錄按住shift、右鍵,選擇在此處打開命令窗口,在命令行窗口中輸入命令:
javac CSDN.java java CSDN
順帶提一下,如果java文件中有中文字符,很可能會報錯,此時需要使用命令:
javac -encoding utf-8 CSDN.java java CSDN
如果java文件中含有System.out.println的程序,運行完成還保留著java程序的運行GUI窗口,顯然這不是我們想要的。此時可以使用javaw的方式來避免:
javac -encoding utf-8 CSDN.java javaw CSDN
四、bat文件
bat文件,類似于Linux系統(tǒng)下的shell腳本。它是一種批處理文件,是一種無格式的文本文件,它包含一條或多條命令。簡單的說,就是在bat文件里的內(nèi)容,運行它,就相當(dāng)于將里面的命令全部挨個運行了一遍。
創(chuàng)建一個CSDN.bat文件:@echo offstart java CSDNexit雙擊bat文件,就相當(dāng)于將java CSDN這一句在命令行里面敲了并運行了一遍。
五、設(shè)置該bat文件開機自啟動
1、右鍵計算機–>管理,選擇系統(tǒng)工具–>計劃任務(wù)程序;
2、選擇創(chuàng)建任務(wù),在彈出窗口中,輸入任務(wù)名稱,并選擇不管用戶是否登錄都要運行–>使用最高權(quán)限運行;
3、切換到觸發(fā)器頁面,開始任務(wù)選擇啟動時,勾選延遲任務(wù)時間(等待一些系統(tǒng)的初始化,避免出錯);
4、切換到操作頁面,操縱選擇啟動程序,定位需要操作的bat文件,同時確定起始于的位置(也就是在那個目錄下啟動命令行);
5、條件和設(shè)置頁面隨個人習(xí)慣進行調(diào)整,最終輸入密碼進行確認。
如此就完成了該JAVA文件的開機自啟動了,本文針對的是一個簡單的Java文件,如果是稍微復(fù)雜點的Java項目,可以將整個項目生成Jar文件,然后使用命令:java -jar CSDN.jar然后編寫相對應(yīng)的bat文件,再重新設(shè)置一遍任務(wù)計劃即可。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JAVA面試題之緩存擊穿、緩存穿透、緩存雪崩的三者區(qū)別
當(dāng)服務(wù)器QPS比較高,并且對數(shù)據(jù)的實時性要求不高時,往往會接入緩存以達到快速Response、降低數(shù)據(jù)庫壓力的作用,常用來做緩存的中間件如Redis等。本文主要介紹了JAVA面試時??嫉木彺鎿舸⒋┩?、雪崩場景三者區(qū)別,有興趣的小伙伴可以看一下2021-11-11Springboot如何獲取配置文件application.yml中自定義的變量并使用
這篇文章主要介紹了Springboot中獲取配置文件(application.yml)中自定義的變量并使用,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-09-09IDEA調(diào)試功能使用總結(jié)(step?over/step?into/force?step?into/step?o
本文主要介紹了IDEA調(diào)試功能使用總結(jié)(step?over/step?into/force?step?into/step?out),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07Java中 ? extends T 和 ? super&nb
本文主要介紹了Java中 ? extends T 和 ? super T的理解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05SpringBoot整合Guava Cache實現(xiàn)全局緩存的示例代碼
這篇文章主要介紹了SpringBoot整合Guava Cache實現(xiàn)全局緩存,Guava Cache是Google Guava庫中的一個模塊,提供了基于內(nèi)存的本地緩存實現(xiàn),文中介紹了SpringBoot整合使用Guava Cache的具體步驟,需要的朋友可以參考下2024-03-03