Spring Boot學(xué)習(xí)之旅:(三)springboot熱部署

相信做開發(fā)的程序猿們都體驗(yàn)過修改一次代碼就要重啟一次的滋味吧簡直不要太爽辅辩,也比較影響工作效率离钝,本來熱部署準(zhǔn)備后面介紹的但是為了方便就先講了把挣郭。本文主要介紹兩種方法配置熱部署浸船,下面請聽細(xì)細(xì)道來妄迁。

一springloaded plugin

第一種方式通過springloaded plugin 插件的方式 在pom.xml 中添加如下節(jié)點(diǎn)

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <dependencies>
            <!-- springload hot deploy -->
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>springloaded</artifactId>
                    <version>1.2.4.RELEASE</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                    <configuration>
                        <classifier>exec</classifier>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
  </build>

添加完成后使用spring-boot:run的方式啟動如下圖。


這里寫圖片描述

便可以啟動項(xiàng)目但是測試一下熱部署 發(fā)現(xiàn)可以 具體可以下載我的代碼下來實(shí)驗(yàn) 接下來把項(xiàng)目關(guān)閉再次啟動發(fā)現(xiàn)出問題了端口占用李命,通過這種方式配置的熱部署 用spring-boot:run 的啟動方式運(yùn)行工程登淘, 關(guān)閉時(shí)不會關(guān)閉后臺進(jìn)程。通過第二種方式啟動將springloaded-1.2.4.RELEASE.jar下載下來放到任意文件夾 文件夾下 然后將eclipce run VM參數(shù)參數(shù)設(shè)置為-javaagent:H:\m2\repository\org\springframework\springloaded\1.2.4.RELEASE\springloaded-1.2.4.RELEASE.jar -noverify 這樣通過run as 啟動時(shí)也能熱部署


這里寫圖片描述

關(guān)閉后端口是可以關(guān)閉的沒有出現(xiàn)上一種方法的問題但是測試的時(shí)候又發(fā)現(xiàn)了一個(gè)問題 修改一個(gè)方法的時(shí)候能夠生效封字,但是添加一個(gè)方法的時(shí)候就沒有效果了這個(gè)就尷尬了下面介紹第二種方法黔州。

二spring-boot- devtools

將上述的插件注視掉 在pom.xml中添加依賴

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
        <scope>true</scope>
    </dependency>

添加相應(yīng)的插件

<plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
            <fork>true</fork>
        </configuration>
    </plugin>

啟動項(xiàng)目測試 :
1重新啟動端口是否能被關(guān)閉
2修改一個(gè)方法能否熱部署
3添加一個(gè)方法能否熱部署
4添加一個(gè)類能否熱部署
5修改配置文件能否熱部署
發(fā)現(xiàn)都是成功的耍鬓。由此熱部署便配置好了
其原理是使用了兩個(gè)classLoader ,一個(gè)是Classloader加載那些不會改變的類如第三方j(luò)ar ,另一個(gè)ClassLoader加載那些會改變的類成為restart ClassLoader ,這樣有代碼更改的時(shí)候原來的流妻,restart ClassLoader 在創(chuàng)建一個(gè)新的restart ClassLoader 加載的類相對較少所以啟動比較快牲蜀,便達(dá)到熱部署的效果。
文章地址 http://www.haha174.top/article/details/252133
項(xiàng)目源碼 https://github.com/haha174/boot.git

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绅这,一起剝皮案震驚了整個(gè)濱河市涣达,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌君躺,老刑警劉巖峭判,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異棕叫,居然都是意外死亡林螃,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進(jìn)店門俺泣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來疗认,“玉大人,你說我怎么就攤上這事伏钠『崧” “怎么了?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵熟掂,是天一觀的道長缎浇。 經(jīng)常有香客問我,道長赴肚,這世上最難降的妖魔是什么素跺? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮誉券,結(jié)果婚禮上指厌,老公的妹妹穿的比我還像新娘。我一直安慰自己踊跟,他們只是感情好踩验,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著商玫,像睡著了一般箕憾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拳昌,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天厕九,我揣著相機(jī)與錄音,去河邊找鬼地回。 笑死扁远,一個(gè)胖子當(dāng)著我的面吹牛俊鱼,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播畅买,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼并闲,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了谷羞?” 一聲冷哼從身側(cè)響起帝火,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎湃缎,沒想到半個(gè)月后犀填,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嗓违,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年九巡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蹂季。...
    茶點(diǎn)故事閱讀 38,687評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡冕广,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出偿洁,到底是詐尸還是另有隱情撒汉,我是刑警寧澤,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布涕滋,位于F島的核電站睬辐,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏宾肺。R本人自食惡果不足惜溯饵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望爱榕。 院中可真熱鬧瓣喊,春花似錦坡慌、人聲如沸黔酥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽跪者。三九已至,卻和暖如春熄求,著一層夾襖步出監(jiān)牢的瞬間渣玲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工弟晚, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留忘衍,地道東北人逾苫。 一個(gè)月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像枚钓,于是被迫代替她去往敵國和親铅搓。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,576評論 2 349

推薦閱讀更多精彩內(nèi)容