美文网首页SpringCloud微服务实战工作生活
SpringCloud 通过 tomcat war 包形式启动,

SpringCloud 通过 tomcat war 包形式启动,

作者: 是龙台呀 | 来源:发表于2019-07-16 09:20 被阅读0次

    记一次开发过程中遇到的 consultomcat中war包 启动联合坑

    在本地开发环境中使用 springboot 内置容器启动服务注册项目, 可以正常注册到consul服务

    因为是一个新项目, 测试环境还在搭建, 所以就通过 Alibaba Cloud 将war包发布至我的云服务器来和前端联调接口

    问题就出现了❗️❗️❗️

    在使用服务调用者进行调用 consul服务 时, 提示找不到注册的服务, 经过排查, 是因为服务提供者就没有注册上

    解决方式

    properties:

    server.port=your-port-here
    spring.cloud.consul.discovery.port=${server.port}
    

    Listener:

    @Configuration
    @ConditionalOnConsulEnabled
    @ConditionalOnMissingBean(type= "org.springframework.cloud.consul.discovery.ConsulLifecycle")
    @AutoConfigureAfter(ConsulAutoServiceRegistrationAutoConfiguration.class)
    public class MyConsulListener implements ApplicationContextAware {
    
        @Autowired(required=false)
        private ConsulAutoServiceRegistration registration;
    
        public void setApplicationContext(ApplicationContext context) throws BeansException {
            if (registration != null){
                registration.start();
            }
        }
    }
    

    参考链接

    相关文章

      网友评论

        本文标题:SpringCloud 通过 tomcat war 包形式启动,

        本文链接:https://www.haomeiwen.com/subject/nkpgcctx.html