【项目问题解决】springboot本机启动elasticjob抛出异常HostException(ip is null)

主图==========

目录
@[TOC](springboot本机启动elasticjob抛出异常HostException(ip is null))


文章所属专区 项目问题解决


1.问题描述

springboot本机启动elasticjob抛出异常HostException(ip is null)

2.问题原因

  1. 异常信息中提到的"ip is null"可能是由于本机的IPV4在校验isReachable时返回false导致的1。这可能是因为使用了无线网导致IP验证问题。解决方法是引入Groovy依赖并在启动类中屏蔽org.apache.shardingsphere.elasticjob.infra.env.IpUtils.getIp()抛出的HostException异常。
  2. 另一个可能的原因是缺少依赖或配置错误。确保已正确引入elasticjob的依赖,并检查相关的配置是否正确。
  3. 还有一种可能是由于网络连接问题导致的。请确保网络连接正常,并尝试重新启动应用程序。

3.解决方案

1.使用的elasticjob版本为3.0.1
在这里插入图片描述
在这里插入图片描述
2.本机的IPV4在校验isReachable 返回false(可能是使用无线网,导致ip验证问题)
在这里插入图片描述
3.最后引入Groovy解决

  • 引入包
 		<dependency>
            <groupId>org.codehaus.groovy</groupId>
            <artifactId>groovy-all</artifactId>
            <version>2.4.15</version>
        </dependency>
  • 代码加入启动类
   * 屏蔽org.apache.shardingsphere.elasticjob.infra.env.IpUtils.getIp()抛出
     * HostException(ip is null) 的异常导致windows本地程序无法启动
     */
    private static void shieldElasticjobIpIsNull(){
        try {
            IpUtils.getIp();
        } catch (HostException e) {
            //抛出HostException 且 异常信息为 "ip is null" 时,设置ip地址为 0.0.0.0
            if("ip is null".equals(e.getMessage())){
                String code = "org.apache.shardingsphere.elasticjob.infra.env.IpUtils.cachedIpAddress=\"0.0.0.0\";";
                GroovyShell groovy = new GroovyShell();
                groovy.evaluate(code);
            }
        }
    }

4.reimport maven clean install 后启动正常

4.参考

[SpringBoot启动Tomcat失败:StandardEngine[Tomcat].StandardHost[localhost]

Apache ShardingSphere ElasticJob document

elastic-job启动报错

dubbo配置解析

SpringBoot集成Elastic-job依赖注入bean失败

给个三连吧 谢谢谢谢谢谢了
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

顶子哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值