国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 開發 > Java > 正文

詳解SpringBoot注冊Windows服務和啟動報錯的原因

2024-07-14 08:43:44
字體:
來源:轉載
供稿:網友

Windows系統啟動Java程序會彈出黑窗口。黑窗口有幾點不好。首先它不美觀;其次容易誤點導致程序關閉;但最讓我匪夷所思的是:將鼠標光標選中黑窗口日志信息,程序竟然不會繼續執行,日志也不會繼續輸出。從而導致頁面一直處于請求狀態。回車后程序才能正常執行。同時客戶希望我們能部署在Windows系統上并且做到開機自動啟動。針對以上需求將系統程序注冊成Windows服務變得尤為重要。

針對于SpringBoot程序,目前主流的方法是采用winsw,簡單方便。可是在開發過程中,針對不同的系統,啟動服務可能會出現意想不到的結果。同樣的配置方法,在win10可以成功注冊并啟動服務。而在windows server 2012 卻啟動失敗。這里分享我的經驗。

注冊windows服務制作流程

winsw是?款可以將可執?程序安裝成Windows Service的開源??具,官地址, 下載地址

制作步驟:

第一步:將springboot項目打包成MyServer.jar

第二步:將下載的WinSW.NET2.exe 改名為MyServer.exe

第三步:將下載的sample-minimal.xml 改名為MyServer.xml

第四步:注冊和啟動服務

這里重點介紹 sample-minimal.xml 文件

<service> <!-- Windows 服務唯一標識ID--> <id>My Server</id> <!-- Windows 服務名稱-->  <name>My Server</name>  <!-- Windows 服務描述-->  <description>This service is a service cratead from a minimal configuration</description>  <!-- 啟動的可執行文件的路徑,如果已經配置環境變量,則不必寫全路徑(則其實是一個坑) --> <executable>java</executable>  <arguments> -jar MyServer.jar --spring.datasource.url=jdbc:mysql://localhost:3306/database </arguments>  <!-- 日志路徑,若目錄不存在,則默認為配置文件所在的同一目錄-->  <logpath>ServerPath/log/dashboard/</logpath>  <!-- 日志模式,默認為append追加模型,rotate為旋轉模式--> <logmode>rotate</logmode> </service>

executable:啟動可執行文件的全路徑,如果配置環境變量,則可以簡寫,所有這里填寫Java

arguments:命令執行的參數

logpath:配置日志路徑

logmode:日志輸出模式,默認為append,官方文檔

  • append (追加模式)其特點是將日志文件全部輸出在一個文件中,這個文件可能會越來越大。
  • rotate(旋轉模式,推薦)當日志文件大小達到10兆(默認值),winsw會將日志重新輸出到另外一份日志文件,最多保留8個(默認值)。
  • reset(重置模式)每次重啟服務都會重置日志文件。
  • none(忽略模式)幾乎不會生成日志文件。

winsw常用命令

  • MyServer.exe install:安裝服務
  • MyServer.exe uninstall:刪除服務
  • MyServer.exe start:啟動服務
  • MyServer.exe stop:停?服務
  • MyServer.exe restart:重啟服務
  • MyServer.exe status:輸出當前服務的狀態

MyServer.exe 是WinSW.NET2.exe文件。在win10系統上一次成功,沒有多余的煩惱。可生活哪有這么容易,在windows server 2012 r2的系統上啟動失敗。有錯誤不可怕,可怕的是不會找錯誤日志。

SpringBoot,注冊,Windows服務,啟動報錯

啟動windows服務失敗

服務啟動成功后自動關閉,配置的日志文件也沒有生成。嘗試用cmd執行java -jar的命令,服務可以正常啟動。但可具體是什么錯誤卻不得而知。其實Windows服務是有日志管理的。選擇:控制面板---管理工具---事件查看器---window日志---應用程序---找出對應服務的日志。如下:

Service cannot be started. System.ComponentModel.Win32Exception: The system cannot find the file specified at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo) at winsw.WrapperService.StartProcess(Process processToStart, String arguments, String executable) at winsw.WrapperService.OnStart(String[] _) at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state)

提示很清楚,系統沒有找到指定文件,而在winsw的xml文件中就已經配置了executable,并且配置了環境變量。那為什么還提示文件沒有找到?抱著試一試的心態,將java改為了全路徑。重新注冊服務并啟動,結果服務啟動成功了。一肚子的火不知道往那撒。

為了避免這種事情再次發生,決定將executable的內容設置成Java的全路徑,于是簡單寫了一個bat文件。

@echo off# 獲取java環境變量 set JAVA_HOME=%JAVA_HOME%echo %JAVA_HOME%# 替換java路徑setlocal enabledelayedexpansionset file=%cd%/MyServer.xmlset file_tmp=%cd%/MyServer_tmp.xmlset source=JAVAHOMEset replaced=%JAVA_HOME%/bin/javafor /f "delims=" %%i in (%file%) do (  set str=%%i    set "str=!str:%source%=%replaced%!"    echo !str!>>%file_tmp%)move "%file_tmp%" "%file%"# 注冊并啟動服務MyServer.exe uninstallMyServer.exe installMyServer.exe startEXIT 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
91精品大全| 国产日产一区二区| 2019中文字幕视频| 国产黄在线看| 2021av天天| 在线国产一级| 麻豆视频在线观看免费网站| 久久这里精品| 国产精品99爱免费视频| 夜色资源网av在先锋网站观看| 亚洲综合色视频在线观看| 日本天堂影院在线视频| 成视频年人免费看黄网站| 在线91av| 国产精品入口麻豆免费看| 中文字幕2019第三页| 秋霞av在线| 国产超碰97| 天堂在线亚洲| 青青草免费在线视频| 国产一区精品| 久热精品免费视频| 51成人精品网站| 国产免费一级| 任你操视频在线观看| 国产精品18久久久久网站| 日本动漫理论片在线观看网站| 国产一区二区三区福利| 欧美日韩亚洲国内综合网| 国产私拍精品| 丁香花高清视频完整版在线观看| 国产精品久久人| 国产毛片毛片| 麻豆精品视频入口| www久久日com| 日本三级在线视频| 在线免费观看高清视频色| 国产私人尤物无码不卡| 丁香视频免费观看| 狠狠色丁香婷婷| 碰草在线视频| www狠狠操| 男女羞羞视频在线观看| gogo高清在线播放免费| 国产黄在线观看| 精品偷拍激情视频在线观看| 国产精品偷乱一区二区三区| 中文字幕av在线播放| 国产h色视频在线观看| 国产精品剧情一区二区在线观看| 国产在线麻豆精品| 国产蜜臀在线| 成网站在线观看人免费| 成在线人视频免费视频| 天堂资源最新版在线视频观看免费网| 黄色一级片视频| 国产网站av| 国产区视频在线播放| 天天av天天爽| 国产精品久久久精品a级小说| 国产人成高清视频观看| √天堂资源中文www| 樱花草在线观看www| www.国产精品.com| 国产有码在线| 精品街拍一区二区| 女子免费在线观看视频www| 国产麻豆视频免费观看| 国产精品666| 亚洲国产成人综合| 久久五月精品中文字幕| 国产一级黄色片免费| 精品麻豆国产| 丁香在线视频| 国产成人夜间影院在线观看| gogogogo高清视频在线| 国产女人伦码一区二区三区不卡| 国产精彩视频在线观看免费蜜芽| 一本大道久久精品| 天天操夜夜操天天射| 在线观看免费观看在线91| 国产嫩草在线视频| 亚洲图区综合| 国产精品久久久精品a级小说| 青青草视频免费在线观看| 国产精品入口麻豆免费| 青草在线视频在线观看| 91国内精品久久久久| 国产乱子视频| av超碰在线| 国产羞羞视频在线观看| 开心婷婷激情| 免费午夜一级| jizz亚洲大全| 亚洲大香人伊一本线| 精品入口蜜桃| 国产成免费视频| 国产日韩欧美精品一区二区三区| 黄污在线观看| 国产在线高清| 国精一区二区三区| xxx国产精品| av免费在线播放| 亚洲日本伊人| 在线国产小视频| 2020国产在线视频| 精品欧美不卡一区二区在线观看| 中文字幕不卡| 国产一区二区三区不卡免费观看| 成年人在线观看| 天堂在线一二区| 国产激情自拍| 亚洲图区欧美| 看成年女人免费午夜视频| 免费看的毛片| 天天操夜夜摸| 国产对白国语对白| 在线免费看黄av| а√最新版地址在线天堂| 日本一二区视频| 国产美女在线观看| 国产一卡2卡3卡免费网站| 国产一级二级在线| 在线观看精品视频一区二区三区| 日韩亚洲一区中文字幕| 国产在线精品一区二区不卡| 国产一级大片| 亚洲欧洲成人| 国产美女高潮| av二区三区| 中文字幕在线资源| 在线免费观看高清视频色| 日本福利午夜视频在线| 国产免费黄网站| 2020国产在线视频| 久久国产热视频| 91黄色在线| 天堂亚洲精品| 日本18视频网站| 伊人福利在线| 国产婷婷视频在线| 国产在线看片| 亚洲xxxxxx| 精品街拍一区二区| 99热最新网址| 激情六月婷婷| 青青草免费在线视频| 精品一区二区三区免费站| 国产原创在线播放| 亚洲欧美综合乱码精品成人网| 黄色网址在线免费播放| 亚洲网站一区| 992tv在线观看在线播放| 天天操人人干| 99热在线免费观看| 久久综合精品视频| 日本黄在线观看| 亚洲欧美精品中文第三| 69免费视频| 91三级在线| av高清在线| 亚洲成av人影片在线观看| 精品国产二区三区| 国产视频97| 中文字幕毛片| 国产日本视频| 国产高清一区二区三区视频| 午夜国产福利在线| 国产羞羞视频在线观看| 国产小视频在线高清播放| 国产偷窥洗澡视频| 国产91久久久久| 亚洲综合在线不卡| 欧美成人亚洲高清在线观看| www.蜜桃av| 国产中文字幕av| 国产裸舞福利在线视频合集| 天堂资源最新在线| 国产黄色一级片| 国产超碰在线| 香蕉视频在线观看www| 青青艹在线视频| 午夜av在线播放| 精品一区二区三区高清免费不卡| 伊人网在线观看| 九九在线视频| 国产二区在线播放| 青青草在线播放| 国产精品剧情一区二区三区| 一本大道香蕉8中文在线视频| 欧美性xxxx交| 国产日产精品久久久久久婷婷| 91麻豆免费在线视频| 牛牛在线精品视频| 最新av免费看| 亚洲男人网站| 国产日韩精品在线看| www.夜夜操.com| 国产黄在线看| 狠狠操天天操夜夜操|