當前位置:首頁 » 編程軟體 » windowsjava啟動腳本

windowsjava啟動腳本

發布時間: 2023-09-22 06:14:26

A. windows設置開機自啟動腳本

Windows系統想要快速設置開機自動啟動某個程序,可以使用以下幾種方法設置:

第一種:設置啟動項

1.找到啟動文件夾,我的是C:\Users\ThinkPad\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup,或者打開運行,輸入shell:startup,回車,也可以快速打開啟動文件夾。

2.拷貝需要開機啟動的程序的快捷方式到此文件夾即可。

3.打開任務管理器-啟動查看啟動項。

這樣就設置好了,下次計算機啟動時,程序也會自動啟動的。

第二種:使用計劃任務自啟動

1.新建文本文件DebugStart.txt,打開寫入以下內容:

tasklist|find /i "authSender.exe" && echo started || start "" "D:\Debug\authSender.exe"。

這條語句不能換行, authSender.exe 是程序名, "D:\Debug\authSender.exe"是此程序所在路徑,tasklist|find /i "authSender.exe"是判斷進程是否存在,程序是否已經開啟,如未開啟才會啟動程序,然後改後綴名 .txt 為 .bat,雙擊即可啟動程序。(可以在每條語句前使用 :: 來注釋一條語句),這種方法還可以批量啟動不同程序,只需要在此文件中重啟一行,按相同格式寫第二個要啟動的程序對應的語句即可。

2.進入任務計劃程序窗口,創建任務。

接著選擇觸發器選項卡,選擇新建,在第一欄開始任務處選擇登錄時(啟動時開始任務需要管理員許可權)或啟動時(啟動時開始任務需要管理員許可權),點擊確定。由於我們的 bat腳本有做判斷,所以不用擔心程序會啟動多次。

在操作選項卡選擇新建,並選擇啟動程序選項,以及在程序和腳本處選擇剛才編寫的.bat程序,點擊確定,然後再點擊確定(創建任務界面的確定)。

關閉頁面,即可做到開機自動啟動程序。

第三種:通過組策略設置腳本隨伺服器啟動

1.開始->運行->gpedit.msc->計算機配置->Windows設置->腳本(啟動/關機)。其中Win10有很多版本,其中家庭版默認是不提供組策略功能,如果需要給win10的家庭版添加組策略的功能,可以參考https://blog.csdn.net/lwpkjio/article/details/85236808。

2.添加啟動腳本,點擊確定。

這樣就可以了。

第四種:添加服務自動運行

1.開始---運行---cmd---回車,在彈出的窗體中輸入如下命令:

sc create Debug binPath= D:\Debug\authSender.exe start= auto,其中Debug為將要創建的服務名。要刪除創建的服務也很簡單,使用以下命令即可:sc delete ServiceName

2.打開控制面板---管理工具---服務(或者 開始---運行---services.msc---確認)打開服務管理器,看看你創建的服務已經在裡面了,至此,服務運行已創建完成。

B. java程序如何在win7系統中開機啟動詳解

以下是在win7系統中如何讓我們自己寫的java程序開機自啟

1,首先我們需要把我們的java程序打成可以運行的jar,放到當前系統的 classpath 目錄中。

2,新建 bat 文件。流程如下:

@echo off

java -jar 路徑xxxx.jar

@pause

然後點擊文件-另存為(存放jar的目錄下),文件名修改xxxx.bat(提議命名和jar名一致)。

3,windows+r輸入regedit會出現注冊表編輯器。

4,在注冊表編輯器中找到Run目錄,具體路徑如下:

HKEY_LOCAL_

5,找到Run目錄之後,在右邊框中右擊新建字元串值,新建唯一標示作為鍵名,然後右擊新建名稱-修改在數值數據中填寫"路徑xxxx.bat"。

6,重啟你的機器,你會看到你想要的效果。

C. java,怎麼用腳本運行

1.直接執行python腳本代碼
引用 org.python包
1 PythonInterpreter interpreter = new PythonInterpreter();
2 interpreter.exec("days=('mod','Tue','Wed','Thu','Fri','Sat','Sun'); "); ///執行python腳本


2. 執行python .py文件
1 PythonInterpreter interpreter = new PythonInterpreter();
2 InputStream filepy = new FileInputStream("D:\\demo.py");
3 interpreter.execfile(filepy); ///執行python py文件
4 filepy.close();


3. 使用Runtime.getRuntime()執行腳本文件
這種方式和.net下面調用cmd執行命令的方式類似。如果執行的python腳本有引用第三方包的,建議使用此種方式。使用上面兩種方式會報錯java ImportError: No mole named arcpy。
1 Process proc = Runtime.getRuntime().exec("python D:\\demo.py");
2 proc.waitFor();

D. 啟動Java應用的Shell腳本

對於Java應用程序(非web應用) 在部署後 常常需要一個啟動腳本來載入一些第三方的jar包 並啟動應用

對於java應用程序 我一般喜歡將程序的目錄結構寫成如下的方式

myapp

| lib

| bin

| packages

一些配置文件和屬性文件

一個startup sh 或bat啟動腳本

其中 packages是程序的根包 其中有子包和class文件等

在包中 有一個Main calss的類 這個作為程序的入口

下面給出一個最一般的寫法

startup sh #!/bin/sh

programdir=

num=$#

temp=$CLASSPATH

#setting libs path

libs= /lib/*

append(){

temp=$temp : $

}

for file in $libs; do

append $file

done

export CLASSPATH=$temp: : /:$programdir

export LANG=zh_CN

nohup java classpath $CLASSPATH packaages xxx yyy Main &

這樣 只要按照上面的方式組織程序 啟動腳本就需要改動下Main前面的包路徑即可

nohup 上面腳本中最後一行前有nohup 這是將程序的輸入輸出都將附加到當前目錄的 nohup out 文件中

lishixin/Article/program/Java/hx/201311/25993

E. java啟動windows命令行

這是摘自JAVA NB 網 http://www.javanb.com 上的例子。

如何用java啟動windows命令行程序: http://www.javanb.com/java/1/17740.html

先請編譯和運行下面程序:

import java.util.*;
import java.io.*;

public class BadExecJavac2
{
public static void main(String args[])
{
try
{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("javac");
int exitVal = proc.waitFor();
System.out.println("Process exitValue: " + exitVal);
} catch (Throwable t){
t.printStackTrace();
}
}
}

我們知道javac命令,當不帶參數運行javac 程序時,它將輸出幫助說明,為什麼上面程序不產生任何輸出並掛起,永不完成呢?java文檔上說,由於有些本地平台為標准輸入和輸出流所提供的緩沖區大小有限,如果不能及時寫入子進程的輸入流或者讀取子進程的輸出流,可能導致子進程阻塞,甚至陷入死鎖。所以,上面的程序應改寫為:

import java.util.*;
import java.io.*;

public class MediocreExecJavac
{
public static void main(String args[])
{
try
{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("javac");
InputStream stderr = proc.getErrorStream();
InputStreamReader isr = new InputStreamReader(stderr);
BufferedReader br = new BufferedReader(isr);
String line = null;
System.out.println("");
while ( (line = br.readLine()) != null)
System.out.println(line);
System.out.println("");
int exitVal = proc.waitFor();
System.out.println("Process exitValue: " + exitVal);
} catch (Throwable t){
t.printStackTrace();
}
}
}

下面是正確的輸出:

D:\java>java MediocreExecJavac

Usage: javac 〈OPTIONs>
where possible options include:
-g Generate all debugging info
-g:none Generate no debugging info
-g:{lines,vars,source} Generate only some debugging info
-nowarn Generate no warnings
-verbose Output messages about what the compiler is doing
-deprecation Output source locations where deprecated APIs are used
-classpath Specify where to find user class files
-cp Specify where to find user class files
-sourcepath Specify where to find input source files
-bootclasspath Override location of bootstrap class files
-extdirs Override location of installed extensions
-endorseddirs Override location of endorsed standards path
-d Specify where to place generated class files
-encoding Specify character encoding used by source files
-source Provide source compatibility with specified release

-target Generate class files for specific VM version
-version Version information
-help Print a synopsis of standard options
-X Print a synopsis of nonstandard options
-J Pass directly to the runtime system

Process exitValue: 2

D:\java>

下面是一個更一般的程序,它用兩個線程同步清空標准錯誤流和標准輸出流,並能根據你所使用的windows操作系統選擇windows命令解釋器command.com或cmd.exe,然後執行你提供的命令。

import java.util.*;
import java.io.*;

class StreamGobbler extends Thread
{
InputStream is;
String type; //輸出流的類型ERROR或OUTPUT

StreamGobbler(InputStream is, String type)
{
this.is = is;
this.type = type;
}

public void run()
{
try
{
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line=null;
while ( (line = br.readLine()) != null)
{
System.out.println(type + ">" + line);
System.out.flush();
}
} catch (IOException ioe)
{
ioe.printStackTrace();
}
}
}

public class GoodWindowsExec
{
public static void main(String args[])
{
if (args.length < 1)
{
System.out.println("USAGE: java GoodWindowsExec ");
System.exit(1);
}

try
{
String osName = System.getProperty("os.name" );
System.out.println("osName: " + osName);
String[] cmd = new String[3];

if(osName.equals("Windows XP") ||osName.equals("Windows 2000"))
{
cmd[0] = "cmd.exe" ;
cmd[1] = "/C" ;
cmd[2] = args[0];
}
else if( osName.equals( "Windows 98" ) )
{
cmd[0] = "command.com" ;
cmd[1] = "/C" ;
cmd[2] = args[0];
}

Runtime rt = Runtime.getRuntime();
System.out.println("Execing " + cmd[0] + " " + cmd[1]+ " " + cmd[2]);
Process proc = rt.exec(cmd);
// any error message?
StreamGobbler errorGobbler = new StreamGobbler(proc.getErrorStream(), "ERROR");
// any output?
StreamGobbler outputGobbler = new StreamGobbler(proc.getInputStream(), "OUTPUT");

// kick them off
errorGobbler.start();
outputGobbler.start();

// any error???
int exitVal = proc.waitFor();
System.out.println("ExitValue: " + exitVal);

} catch (Throwable t){
t.printStackTrace();
}
}
}
下面是一個測試結果:

D:\java>java GoodWindowsExec " Test.java Test1.java"
osName: Windows XP
Execing cmd.exe /C Test.java Test1.java
OUTPUT>已復制 1 個文件。
ExitValue: 0

D:\java>

下面的測試都能通過(windows xp+jdk1.5)

D:\java>java GoodWindowsExec dir

D:\java>java GoodWindowsExec Test.java

D:\java>java GoodWindowsExec regedit.exe

D:\java>java GoodWindowsExec NOTEPAD.EXE

D:\java>java GoodWindowsExec first.ppt

D:\java>java GoodWindowsExec second.doc

function TempSave(ElementID) { CommentsPersistDiv.setAttribute("CommentContent",document.getElementById(ElementID).value); CommentsPersistDiv.save("CommentXMLStore"); } function Restore(ElementID) { CommentsPersistDiv.load("CommentXMLStore"); document.getElementById(ElementID).value=CommentsPersistDiv.getAttribute("CommentContent"); }

熱點內容
怎麼登陸appleid密碼忘了怎麼辦啊 發布:2024-11-19 00:29:54 瀏覽:655
極地大亂斗掛機腳本 發布:2024-11-19 00:29:01 瀏覽:419
iphone怎麼新建文件夾 發布:2024-11-19 00:24:37 瀏覽:912
免費代理伺服器ip和埠怎麼用 發布:2024-11-19 00:20:10 瀏覽:878
c語言帶參數的宏 發布:2024-11-19 00:07:31 瀏覽:946
15人團隊解壓拓展有什麼作用 發布:2024-11-18 23:46:34 瀏覽:307
百米2什麼配置 發布:2024-11-18 23:37:55 瀏覽:650
mp3存儲 發布:2024-11-18 23:20:08 瀏覽:865
自考專升本密碼多少位 發布:2024-11-18 23:16:45 瀏覽:269
資料庫底庫 發布:2024-11-18 23:15:08 瀏覽:945