『壹』 bat文件啟動jar文件的問起
@echo offcd G:\openplant\startsrart winrar.exe start.jarpause
『貳』 .bat批處理文件怎麼寫語句來運行.jar文件
在文檔中寫上 java -jar D:\workspace\test\test_fat.jar 然後文檔後綴改成.bat。然後把bat文件和你的test_fat放在一個文件夾中,就行了
前提是:你的jar包打的正確,用Eclipes打包時注意指定Main Class
然後就沒問題了。
你也可以手動修改
打開jar包,裡面有個mate-inf文件夾,把裡面的manifest.mf文件拷出來,打開,如下:
Manifest-Version: 1.0
Created-By: 1.6.0_06 (Sun Microsystems Inc.)
Main-Class: thinkerbell.src.MainClassAction(你需要把這里改成你的啟動class文件路徑,就是main方法在哪個class中,就寫哪個class路徑,要是有包夜妖帶上,然後再覆蓋回去就行了
用記事本打開manifest.mf,然後修改就可以了;
我測試過了,沒問題,希望對你有幫助
『叄』 如何用bat同時運行多個文件
的java所在的路徑 Java的罐子1.jar java的所在路徑 Java的罐子2.jar ...
『肆』 如何通過bat或sh腳本執行jar
java執行jar包中的class 命令為: java -classpath xxx.jar package.MyTools 注意: 該MyTools中必須包含main函數. 例子:1.業務代碼MyTools類含有main函數,包路徑為com.my.test,它引用了oracle的驅動classes12.jar最終打包成Tools.jar2.新建start.bat文件,內容如下(注意要引入classes12.jar,以分號間隔)java -classpath Tools.jar;classes12.jar com.my.test.MyTools
pause同樣,sh腳本:要進行dos2unix#!/bin/sh
cmddir="`dirname $0`"
『伍』 如何利用啟動腳本將目錄下的多個jar自動加入到classpath中
在這個腳本中,我們會設置好各種環境變數,最重要的就是classpath了。 寫個java應用,沒有使用十個八個開源項目,你都不好意思跟人打招呼。 這時,就會碰到一個問題,設置classpath的時候要一個個列出jar包來,例如set classpath=%classpath%;./lib/xxx.jar;./lib/xxx.jar;./lib/xxx.jar;./lib/xxx.jar;....是不是覺得很煩,有多少個jar都要列出來。於是google了一下,問題順利解決,答案就在本機上有。 打開tomcat的啟動腳本,注意到這一部分:for %%i in (%TOMCAT_HOME%\lib\*.*) do call %TOMCAT_HOME%\bin\cpappend.bat %%i循環取lib目錄下的所有文件,然後call cpappend.bat,很顯然是用這個腳本把前面取出的文件加入到了classpath。 看看cpappend.bat的內容,if ""%1"" == """" goto end set CLASSPATH=%CLASSPATH%;%1 shiftrem Process the remaining arguments:setArgsif ""%1"" == """" goto doneSetArgs set CLASSPATH=%CLASSPATH% %1shiftgoto setArgs :end果然如此。照貓畫虎,很快就搞定了自己的腳本。
『陸』 如何讓windows開機自動運行一個bat文件,並且當用戶登錄後還能看到這個bat文件的控制台窗口
第一種:需要登錄才能運行的方法第一步:編寫運行jar包的bat文件新建一個***.txt文件,將以下內容放進去,然後修改文件後綴為.bat@echo offjava -jar C:\Users\Administrator\Desktop\test-0.0.1-***.jar > C:\Users\Administrator\Desktop\***.logpause
解釋:@echo off 執行該命令後,後面所有的命令行都不會顯示出來(但是程序的列印輸出會顯示) > 將jar包控制台的輸出輸出到一個文件中(可以不輸出到文件中,因為文件可能會特別大) pause 當執行到該命令時,會暫停命令行的執行,並列印顯示"請輸入任意鍵繼續..."的字元。可能是因為springBoot啟動時需要列印一堆東西的緣故,可能會額外彈出一個窗口顯示"請輸入任意鍵繼續..."的字元。然後你按任意鍵繼續即可,只要列印輸出的窗口不關,額外彈出的窗口關閉也沒事,就相當於一個啟動完成的標志吧。 PS:如果想要在一個bat文件中運行多個jar包,要這樣使用@echo offstart cmd /c "java -jar d:\***.jar"start cmd /c "java -jar d:\***.jar" pause
解釋: start 表示要執行一個命令或一個可執行的文件等。啟動多個可執行文件:https://blog.***.net/qq_24489717/article/details/60957981這樣每執行一個start cmd /c 命令就會彈出一個命令行窗口,所以要想辦法隱藏掉。因為有一個控制台列印的進程一直開著,所以關閉是關閉不掉的。第二步:編寫vb腳本隱藏命令行窗口因為若只執行第一步的話,啟動後會彈出一個或多個命令行窗口,當窗口關閉時,項目也停止了,所以編寫一個vb腳本隱藏命令行窗口,操作步驟:新建一個txt文件,將以下內容進去,修改文件後綴為vbs即可。內容如下Set ws = CreateObject("***.shell")ws.run "cmd /c d:\***.bat",vbhide
作用就是去執行第一步的bat文件。檢查有沒有啟動成功: netstat -ano | findstr 埠號強制關閉進程: taskkill -f -pid 進程id 第三步:設置開機運行該腳本找到這個位置C:\Users\admin\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup或者這個位置C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp將第二步的vbs文件放進去就行了。(注意,AppData和ProgramData是兩個隱藏文件,需要在查看中勾選隱藏的項目這個選項。以上兩個目錄都是windows的開機自啟目錄,區別就是第一個只是屬於當前登錄用戶的,第二個是屬於所有用戶的。如果設置了開機密碼,則必須是輸入密碼後才會去執行vb腳本,注意!第二種:不需要登錄也可運行程序的方法 方式一::利用組策略開機啟動項目利用windows自帶的搜索工具,搜索"組策略",打開以下頁面雙擊啟動,在啟動中添加vb腳本,即可實現不用登陸,也能開機啟動程序。個人電腦大部分都有這個組策略,但像windowsServer這樣的伺服器就沒有這個(MD,親身體驗過...),但我們可以使用以下方式。方式二:利用計劃任務實現開機啟動 在任務創建的最後輸入用戶名和密碼即可。 圖中的test任務為我剛剛測試的任務,這是他的一些屬性。
test任務屬性圖方式三:注冊成windows服務,並設置啟動方式為開機自啟 利用windows的sc(service create)命令。之後重啟伺服器即可看到啟動成功sc create 服務名 binPath=C:\Users\admin\Desktop\***.bat start= auto
查看是否啟動成功 在cmd中輸入***.msc ,查看是否有該服務 啟動,關閉,刪除該服務net start 服務名net stop 服務名sc delete 服務名
方式四:修改注冊表
『柒』 怎樣編寫bat文件依次運行多個jar文件(jar文件能有20來個,都可雙擊運行),急
java所在路徑java-jar1.jar
java所在路徑java-jar2.jar
...
『捌』 bat腳本啟動jar文件
是這樣的,對於有空格的文件,要用引號,但是START的第一個引號內的內容是標題,所以你需要這樣寫:
start "title" "%path%\javaw" -jar **.jar
『玖』 有關bat文件運行jar包出現的問題
加上 -cp的參數。把你依賴的第三方jar包(比如你現在少的hibernate的)放到某個路徑,然後運行參數如下:
java -cp ${path}:${path}/lib/*:app9Service.jar xxx(這個是包含main方法的全類名)
『拾』 如何通過bat腳本調用jar可執行文件
當然前提是你的電腦要配置好Java環境。
如果某些程序需要定期執行,那我們可以編寫bat文件來執行相關java程序。(Linux中應該是寫shell文件,這個我們以後再討論)
很多同學可能不太了解如何編寫bat文件,不用擔心,我們可以從最基礎的開始。
@echo off
java -jar -Xms4000m -Xmx4000m -Xmn2000m test.jar
@pause
1
2
3
4
5
1
2
3
4
5
新建一個bat文件,將上面代碼復制進去就可以了,保存後雙擊運行bat文件,就可以執行test.jar程序了。這里加了一些參數是用來初始化內存,在JAVA_OPTS Java虛擬機參數說明中我已經做了詳細說明,這里就不廢話了。
@pause會讓彈出的命令行窗口暫停,提示「請按任意鍵繼續…」,如果不需要暫停的話,可以刪掉。尤其做成定時任務的時候,如果你不刪掉,一直等待,會影響第二次運行。
如果需要輸出日誌,如下所示:
@echo off
java -jar -Xms8000m -Xmx8000m -Xmn4000m test.jar > log\batchLog%date:~0,4%%date:~5,2%%date:~8,2%.log
運行後會生成log\batchLog20161010.log這個日誌文件,在日子文件的名稱中增加了時間,可以每天生成不同日誌文件,便於管理。
注意點:
日誌文件會在執行命令的時候生成,但是日誌文件夾不會自動生成,比如上面得log文件夾,這個文件夾用於存放日誌文件,如果沒有事先建好,會報找不到路徑的錯誤,導致命令執行錯誤。
如果你的電腦沒有配置java環境,這樣執行會報錯的,因為找不到jdk的類庫,所以為了簡單點,我們還是先把java環境配置好吧。
當執行失敗的時候,可以將@echo off去掉,這樣命令窗口就會
列印失敗信息,有助我們判斷問題原因。