springCloud Finchley 微服務架構從入門到精通【十一】Tomcat 部署項目

  在基於老版本的springcloud中使用tomcat部署項目是比較麻煩的,你可能須要在pom.xml中手動排除tomcat來部署到線上環境,而排除tomcat後eclipse中又沒法使用SpringBootApplication類啓動工程。java

  在新版本的SpringCloud中,開發者們解決了這個問題,如今使用Tomcat部署項目是很是簡單的,只須要簡單兩步就能夠保證本地和線上同時可用。web

一、修改Pom.xml配置

tomcat部署war包,因此Maven打包格式要改成warspring

<packaging>war</packaging>

springcloud應用部署一般是一個tomcat部署一個應用,爲了方便,把本身的微服務都打成ROOT.war名字的war包tomcat

<build>
        <finalName>ROOT</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

二、修改啓動類

繼承SpringBootServletInitializer類,複寫configure方法微信

package com.mayi.springcloud;


import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class CommonserviceEurekaApplication extends SpringBootServletInitializer{

    public static void main(String[] args) {
        SpringApplication.run(CommonserviceEurekaApplication.class, args);
    }
    
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(CommonserviceEurekaApplication.class);
    }
}

三、啓動測試

  • 在eclipse中經過啓動類直接啓動
  • 使用mvn clean package -DskipTests打成war包,而後將war包放入線上tomcat啓動

clipboard.png

注:配置文件中的端口號最好與tomcat保持一致(默認優先tomcat配置),不然容易形成混亂架構

架構師Q羣:618578034eclipse

spring cloud社區羣(需加微信拉您進入)maven

clipboard.png

微信公衆號:java架構師修行ide

本公衆號將要使用一年的時間,按照JAVA高級軟件架構師實戰培訓的路線發佈一期完整的架構文章,難度由淺入深,適合有必定開發基礎想轉架構和正在作初級架構開發的人員學習,歡迎關注spring-boot

clipboard.png

相關文章
相關標籤/搜索