如何讓W(xué)in10實(shí)現(xiàn)Java文件的開機(jī)自啟動(dòng)
一、問題描述
隨著入了Win10的坑,發(fā)現(xiàn)它最不能讓人忍受的一點(diǎn)就是強(qiáng)制系統(tǒng)更新,而且系統(tǒng)更新之頻繁,簡直不能忍。這就導(dǎo)致,對(duì)于一些想要一直運(yùn)行的Java文件,就會(huì)造成每次系統(tǒng)更新之后的重啟導(dǎo)致Java文件無法繼續(xù)運(yùn)行。
也有很多博客解決這個(gè)問題:創(chuàng)建一個(gè)bat文件,將快捷方式放到C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp目錄下,這個(gè)方式需要用戶登錄才能自啟動(dòng),不行;
利用Instsrv.exe(可以給系統(tǒng)安裝和刪除服務(wù))、Srvany.exe(可以讓程序以服務(wù)的方式運(yùn)行),看到這,就不想試了,太麻煩。
本文就以很簡單的程序?yàn)槔?,來?shí)現(xiàn)解決這個(gè)問題的過程?。?!
二、問題解決
問題解決的途徑是創(chuàng)建計(jì)算機(jī)任務(wù)計(jì)劃程序。
三、準(zhǔn)備工作
例如:需要實(shí)現(xiàn)下面文件(CSDN.java)的開機(jī)啟動(dòng)。
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)建一個(gè)。然后在該文件中寫入Hello World!。邏輯很簡單。
我們?nèi)绾蝸磉\(yùn)行這個(gè)java文件呢?在當(dāng)前目錄按住shift、右鍵,選擇在此處打開命令窗口,在命令行窗口中輸入命令:
javac CSDN.java java CSDN
順帶提一下,如果java文件中有中文字符,很可能會(huì)報(bào)錯(cuò),此時(shí)需要使用命令:
javac -encoding utf-8 CSDN.java java CSDN
如果java文件中含有System.out.println的程序,運(yùn)行完成還保留著java程序的運(yùn)行GUI窗口,顯然這不是我們想要的。此時(shí)可以使用javaw的方式來避免:
javac -encoding utf-8 CSDN.java javaw CSDN
四、bat文件
bat文件,類似于Linux系統(tǒng)下的shell腳本。它是一種批處理文件,是一種無格式的文本文件,它包含一條或多條命令。簡單的說,就是在bat文件里的內(nèi)容,運(yùn)行它,就相當(dāng)于將里面的命令全部挨個(gè)運(yùn)行了一遍。
創(chuàng)建一個(gè)CSDN.bat文件:@echo offstart java CSDNexit雙擊bat文件,就相當(dāng)于將java CSDN這一句在命令行里面敲了并運(yùn)行了一遍。
五、設(shè)置該bat文件開機(jī)自啟動(dòng)
1、右鍵計(jì)算機(jī)–>管理,選擇系統(tǒng)工具–>計(jì)劃任務(wù)程序;

2、選擇創(chuàng)建任務(wù),在彈出窗口中,輸入任務(wù)名稱,并選擇不管用戶是否登錄都要運(yùn)行–>使用最高權(quán)限運(yùn)行;

3、切換到觸發(fā)器頁面,開始任務(wù)選擇啟動(dòng)時(shí),勾選延遲任務(wù)時(shí)間(等待一些系統(tǒng)的初始化,避免出錯(cuò));

4、切換到操作頁面,操縱選擇啟動(dòng)程序,定位需要操作的bat文件,同時(shí)確定起始于的位置(也就是在那個(gè)目錄下啟動(dòng)命令行);

5、條件和設(shè)置頁面隨個(gè)人習(xí)慣進(jìn)行調(diào)整,最終輸入密碼進(jìn)行確認(rèn)。

如此就完成了該JAVA文件的開機(jī)自啟動(dòng)了,本文針對(duì)的是一個(gè)簡單的Java文件,如果是稍微復(fù)雜點(diǎn)的Java項(xiàng)目,可以將整個(gè)項(xiàng)目生成Jar文件,然后使用命令:java -jar CSDN.jar然后編寫相對(duì)應(yīng)的bat文件,再重新設(shè)置一遍任務(wù)計(jì)劃即可。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java SpringBoot詳解集成以及配置Swagger流程
Swagger 是一個(gè)規(guī)范和完整的框架,用于生成、描述、調(diào)用和可視化 RESTful 風(fēng)格的 Web 服務(wù)??傮w目標(biāo)是使客戶端和文件系統(tǒng)作為服務(wù)器以同樣的速度來更新。文件的方法,參數(shù)和模型緊密集成到服務(wù)器端的代碼,允許API來始終保持同步2021-10-10
java web response提供文件下載功能的實(shí)例講解
下面小編就為大家分享一篇java web response提供文件下載功能的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-01-01
Spring?Retry實(shí)現(xiàn)重試機(jī)制的示例詳解
IDEA下Maven的pom文件導(dǎo)入依賴出現(xiàn)Auto build completed with errors的問題
Spring MVC Interceptor 實(shí)現(xiàn)性能監(jiān)控的功能代碼

