springCloud Finchley 微服务架构从入门到精通【十一】Tomcat 部署项目

  在基于老版本的springcloud中使用tomcat部署项目是比较麻烦的,你可能需要在pom.xml中手动排除tomcat来部署到线上环境,而排除tomcat后eclipse中又无法使用SpringBootApplication类启动工程。

  在新版本的SpringCloud中,开发者们解决了这个问题,现在使用Tomcat部署项目是非常简单的,只需要简单两步就可以保证本地和线上同时可用。

###1、修改Pom.xml配置###

tomcat部署war包,所以Maven打包格式要改为war

<packaging>war</packaging>

springcloud应用部署通常是一个tomcat部署一个应用,为了方便,把自己的微服务都打成ROOT.war名字的war包

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

###2、修改启动类###
继承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);
	}
}

###3、启动测试###

  • 在eclipse中通过启动类直接启动
  • 使用mvn clean package -DskipTests打成war包,然后将war包放入线上tomcat启动

这里写图片描述

注:配置文件中的端口号最好与tomcat保持一致(默认优先tomcat配置),否则容易造成混乱

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值