亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 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教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品三级美女白浆呻吟| 欧美性猛交xxxx乱大交极品| 成人天堂噜噜噜| 亚洲自拍偷拍区| 疯狂蹂躏欧美一区二区精品| 成人啪啪免费看| 插插插亚洲综合网| 精品国内产的精品视频在线观看| 精品久久久久久国产| 亚洲欧美国产精品专区久久| 亚洲国产精品免费| 久久久久久久久爱| 在线精品国产成人综合| 精品视频久久久久久| 美女少妇精品视频| 黑人狂躁日本妞一区二区三区| 亚洲国产成人精品久久久国产成人一区| 欧美成人sm免费视频| 亚洲一级免费视频| 欧美又大又硬又粗bbbbb| 亚洲国产美女久久久久| 日本亚洲欧美成人| 亚洲视频视频在线| 在线不卡国产精品| 国产香蕉97碰碰久久人人| 一区二区三区四区精品| 国产精品自拍偷拍| 欧美裸体xxxx| 欧美性在线观看| 欧美午夜片欧美片在线观看| 在线看国产精品| 欧美精品videosex性欧美| 精品人伦一区二区三区蜜桃网站| 国产精品激情自拍| 日韩美女写真福利在线观看| 国产精品久久久久久久午夜| 久久久999精品免费| 91产国在线观看动作片喷水| 欧美黑人国产人伦爽爽爽| 奇米4444一区二区三区| 日韩av男人的天堂| 欧美视频在线免费看| 色哟哟网站入口亚洲精品| 精品中文字幕久久久久久| 亚洲第一中文字幕| 国产91成人video| 国产成人精品日本亚洲| 日日狠狠久久偷偷四色综合免费| 久久久精品网站| 亚洲精品电影久久久| 日韩视频精品在线| 欧美另类暴力丝袜| 国产在线视频一区| 精品国产一区二区三区四区在线观看| 日韩电影大全免费观看2023年上| 91日本在线视频| 久久亚洲私人国产精品va| 久久久久久亚洲精品不卡| 8x海外华人永久免费日韩内陆视频| 一区二区三区美女xx视频| 精品视频偷偷看在线观看| 亚洲欧洲免费视频| 日韩av在线免费播放| 午夜精品福利电影| 国产综合在线观看视频| 国产91色在线| 91精品视频免费| 国产日韩在线精品av| 亚洲激情视频在线| 国产福利成人在线| 亚洲专区在线视频| 欧美在线视频观看免费网站| 日韩在线视频观看正片免费网站| 国产精品日韩在线一区| 一区二区欧美激情| 一区二区亚洲精品国产| 亚洲自拍小视频| 国产一区欧美二区三区| 国产欧洲精品视频| 97在线观看免费| 欧美中文字幕第一页| 亚洲一区二区久久| 色偷偷噜噜噜亚洲男人的天堂| 欧美插天视频在线播放| 国产成人高清激情视频在线观看| 成人av在线天堂| 国产精品美女在线| 91禁国产网站| 成人网在线免费观看| 欧美成人性色生活仑片| 亚洲第一区中文字幕| 国产精品亚洲美女av网站| 亚洲激情第一页| 国产欧美日韩精品在线观看| 日韩免费观看视频| 亚洲一级片在线看| 91成人性视频| 国产一区二区三区精品久久久| 国产精品自在线| 91久久精品国产91久久性色| 日韩精品免费观看| 亚洲人成电影网站色www| 日韩免费在线电影| 国产在线日韩在线| 亚洲欧美一区二区三区久久| 91sao在线观看国产| 91九色视频导航| 在线观看日韩欧美| 亚洲欧洲日产国产网站| 国产精品人成电影| 国产精品久久999| 欧美午夜精品久久久久久久| 精品精品国产国产自在线| 欧美中文在线免费| 欧美精品在线观看91| 亚洲网站视频福利| 国内精品小视频| 国产精品男女猛烈高潮激情| 亚洲综合在线做性| 欧美日韩性视频在线| 亚洲午夜未删减在线观看| 中文欧美在线视频| 亚洲国产精品字幕| 狠狠躁天天躁日日躁欧美| 国产69精品久久久久9999| 久久99亚洲热视| 欧美激情二区三区| 亚洲国产精品久久精品怡红院| 久久精品国产久精国产一老狼| 日韩第一页在线| 91综合免费在线| 久久影院模特热| 成人免费视频xnxx.com| 国产日产亚洲精品| 精品久久久视频| 国产精品白嫩美女在线观看| 亚洲乱码一区av黑人高潮| 久久99青青精品免费观看| 日韩风俗一区 二区| 久久国产天堂福利天堂| 亚洲一级黄色片| 97国产suv精品一区二区62| 欧美日韩ab片| 久久久久久av| 日韩中文视频免费在线观看| 精品女同一区二区三区在线播放| 中文字幕亚洲二区| 欧美专区国产专区| 色偷偷噜噜噜亚洲男人的天堂| 亚洲天堂网站在线观看视频| 亚洲视频在线观看视频| 欧美乱妇40p| 在线精品国产欧美| 久久久噜噜噜久久| 欧洲日韩成人av| 夜夜嗨av色综合久久久综合网| 国产91在线高潮白浆在线观看| 亚洲成人a级网| 91超碰caoporn97人人| 爱福利视频一区| 欧美在线亚洲一区| 91精品视频播放| 两个人的视频www国产精品| 永久免费看mv网站入口亚洲|