1. 程式人生 > >windows計劃任務啟動bat執行java檔案

windows計劃任務啟動bat執行java檔案

系統:win7

環境:需要配置好jdk的環境變數

需求:每次開機,用bat批處理執行將一個位於D:\workspace\console目錄底下的console.txt重新命名的java檔案

拿到需求,我們可以分解:

 1:編寫java操作檔案類

  2:編寫.bat執行java檔案

  3:配置系統的計劃任務

一、編寫java操作檔案類

用java操作檔案,這個比較簡單,就不多闡述了,這裡要注意的是,bat操作java檔案時,不允許出現中文字元的註釋

測試java類

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;


public class CreateTomcatConsoleFile {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        File oldfile = new File("D:\\workspace\\console\\console.txt");
        if(oldfile.exists()&&oldfile.isFile()){
            SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd_HHmmss");
            String time = df.format(new Date());
            File newfile = new File("D:\\workspace\\console\\console_"+time+".txt");
            oldfile.renameTo(newfile); 
        }
    }
    

}

二、編寫.bat執行java檔案

先建立一個普通的.txt檔案,用記事本開啟,輸入我們要執行的操作,這裡的操作,可以現在dos命令列裡測試一遍,可以執行後貼上到記事本里。

其中,%CLASSPATH%、%PATH%、%JAVA_HOME%要根據自己的環境變數來設定;我的java檔案放在D:\taskplan\start目錄底下,所以需要引導到該目錄

最後執行java  CreateTomcatConsoleFile,當然在這之前你也可以先編譯.java檔案,如

  javac  CreateTomcatConsoleFile.java

  java  CreateTomcatConsoleFile

換行隔開,不用標點符號

@echo off
set CLASSPATH=%CLASSPATH% 
set PATH=%PATH%  
set JAVA_HOME=%JAVA_HOME%
d:
cd D:\taskplan\start
java  CreateTomcatConsoleFile
exit
@pause

檔案都已經編寫完了,我的目錄是這樣的

三、配置系統的計劃任務

開啟win7左下角的選單欄,在搜尋框內輸入“任務計劃”

開啟任務計劃後,在右邊“操作”中找到“建立任務”

名稱和描述隨意輸入,選擇使用者登入時執行,並且配置系統選擇win7

切換選項卡到觸發器,新建觸發器,選擇登入時,所有使用者,然後確定

切換選項卡到“操作”,新建,操作選擇啟動程式,程式或者指令碼填我們前面寫好的.bat檔案路徑,然後確定

後面兩個選項卡“條件”和“設定”是更加細粒度的條件設定,其中,在設定中,“允許按需允許任務”要打勾,方便測試,

其他的可以根據需求去設定,到這裡已經滿足我們的需求了,就不往下做了

到主面板就可以看到我們新增的計劃了

注意:360或者安全管家記得放行,因為這些安全程式都提示攔截,記得放行,不要禁用

四、測試

找到右邊的“所選項”,選擇我們剛剛新增的任務,點選“執行”

至此,用系統的任務計劃執行.bat檔案操作java檔案以及實現了

自己的bat更改:

真正最正確的用BAT執行JAVA不顯示DOS視窗(連閃一下都不閃)

java -jar xxx.jar 更改為 start javaw -jar xxx.jar

那就是在批處理第一行加上@echo off

解釋一下 echo off 表示在此語句後所有執行的命令都不顯示命令列本身 @ 表示執行時不顯示本命令列