部署springboot項(xiàng)目到云服務(wù)器的兩種方式(jar+war)
springboot版本:2.0.3.RELEASE
云服務(wù)器:阿里云ECS?CentOS 7.3 64位
IDE:IntelliJ IDEA
服務(wù)器遠(yuǎn)程連接工具:Xshell 5
方式一、以jar文件運(yùn)行
添加maven依賴
Spring Boot 默認(rèn)以jar包方式運(yùn)行,
可以在Maven配置如下插件,將Spring Boot 導(dǎo)出成可執(zhí)行的jar文件。
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
將項(xiàng)目打包
在工程目錄下的運(yùn)行命令行中運(yùn)行mvn package:
>mvn package
*推薦使用IDE中圖形化界面的操作
(圖中操作是跳過(guò)測(cè)試打包)
package會(huì)將Maven工程打包成一個(gè)可執(zhí)行的jar文件存放在target目錄下,在控制臺(tái)中看到有如下輸出則表示輸出成功:
將jar文件放到服務(wù)器
打包好的jar文件已存放在target目錄下
將jar文件放到服務(wù)器合適的目錄下
(本文使用直接鼠標(biāo)拖拉的方式,也可根據(jù)需要使用rz命令、FileZilla工具等方式)
在服務(wù)器運(yùn)行jar文件
切換到j(luò)ar文件所在目錄,執(zhí)行命令(前提是已在服務(wù)器裝好jdk)
java -jar yourProjectName.jar
瀏覽器訪問(wèn)
在瀏覽器輸入地址訪問(wèn)
注意和在本地電腦運(yùn)行相比,只需將ip地址換成服務(wù)器的即可,端口號(hào)和路徑名都是跟在本地電腦運(yùn)行時(shí)一樣的,即與yml配置文件一致
至此,項(xiàng)目部署完成
2、以war方式部署
Spring Boot 默認(rèn)自帶了一個(gè)嵌入式的Tomcat服務(wù)器,可以以jar方式運(yùn)行,更為常見(jiàn)的情況是需要將Spring Boot 應(yīng)用打成一個(gè)war包,部署到Tomcat等服務(wù)器上。
修改打包方式
這種情況下,需要將pom中的packaging改成war方式:
移除嵌入式tomcat插件
這里提供2種方式(本文項(xiàng)目使用方式2)
方式1、需要將嵌入的Tomcat依賴方式改成provided(編譯、測(cè)試時(shí)將依賴的包加入本工程的classpath,運(yùn)行時(shí)不加入,可以理解成運(yùn)行時(shí)不使用Spring Boot 自帶的Tomcat)
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
方式2、在pom.xml里找到spring-boot-starter-web
依賴節(jié)點(diǎn),在其中添加如下代碼,
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 移除嵌入式tomcat插件 --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>
添加servlet-api的依賴
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
修改啟動(dòng)類,并重寫(xiě)初始化方法
打包
操作步驟與jar方式的打包一致,打包完成后會(huì)在target目錄下生成.war文件
部署
將war文件放到Tomcat的webapps目錄下,啟動(dòng)Tomcat(在bin目錄下執(zhí)行./startup.sh),即可自動(dòng)解壓部署
瀏覽器訪問(wèn)
訪問(wèn)地址為:
http://服務(wù)器ip:服務(wù)器里Tomcat配置的端口/項(xiàng)目名/接口路徑
*注意:項(xiàng)目名以Tomcat的webapps目錄下解壓后的文件夾名字為準(zhǔn)
由于不使用Spring Boot 自帶的Tomcat所以yml文件下的server配置不起作用
到此,項(xiàng)目部署完成
總結(jié)
1、jar包部署方式使用Spring Boot 自帶的Tomcat,因?yàn)镾pring Boot 應(yīng)用自帶Tomcat,所以可直接在服務(wù)器運(yùn)行jar文件
2、war包部署方式則使用云服務(wù)器里的Tomcat,此時(shí)需要移除Spring Boot 自帶的Tomcat插件
3、注意2種部署方式的訪問(wèn)路徑差異
4、注意所用端口號(hào)是否已在安全組開(kāi)放
到此這篇關(guān)于部署springboot項(xiàng)目到云服務(wù)器的兩種方式(jar+war)的文章就介紹到這了,更多相關(guān)springboot部署到云服務(wù)器 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中內(nèi)存異常StackOverflowError與OutOfMemoryError詳解
這篇文章主要介紹了 Java中內(nèi)存異常StackOverflowError與OutOfMemoryError詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03SpringMVC源碼解讀之 HandlerMapping - AbstractDetectingUrlHandlerM
這篇文章主要介紹了SpringMVC源碼解讀之 HandlerMapping - AbstractDetectingUrlHandlerMapping系列初始化的相關(guān)資料,需要的朋友可以參考下2016-02-02java虛擬機(jī)內(nèi)存溢出及泄漏實(shí)例
本篇文章給大家分享了java虛擬機(jī)內(nèi)存溢出及泄漏的實(shí)例以及相關(guān)知識(shí)點(diǎn)分享,有興趣的朋友參考學(xué)習(xí)下。2018-06-06使用IDEA進(jìn)行安卓開(kāi)發(fā)的詳細(xì)圖文教程
安卓開(kāi)發(fā)本身就是Java開(kāi)發(fā)的一個(gè)分支,我們要確保計(jì)算機(jī)已經(jīng)安裝好JDK并做好了相關(guān)的配置,下面這篇文章主要給大家介紹了關(guān)于如何使用IDEA進(jìn)行安卓開(kāi)發(fā)的詳細(xì)圖文教程,需要的朋友可以參考下2023-04-04springAop實(shí)現(xiàn)權(quán)限管理數(shù)據(jù)校驗(yàn)操作日志的場(chǎng)景分析
這篇文章主要介紹了springAop實(shí)現(xiàn)權(quán)限管理數(shù)據(jù)校驗(yàn)操作日志的場(chǎng)景分析,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03