springboot启动时xxl-job相关问题记录


1.xxl-job java.net.BindException: Address already in use: bind

跳转到目录

  • xxljob执行器注解@bean配置的问题

  • 在低版本的xxl-job中,初始化XxlJobSpringExecutor执行器需要在@bean注解中加上 initMethod = “start”, destroyMethod = “destroy”,但是在高版本的 xxl-job(如 2.1.2)则需要删除 initMethod = “start”, destroyMethod = “destroy”

  • @Bean 的属性 initMethod = “start”, destroyMethod = “destroy” 删除即可

  • 报错
    在这里插入图片描述

  • 改正
    在这里插入图片描述

2.xxl-job配置文件(executor

跳转到目录

  • 需要在xxl-job任务调度中心新增相应的执行管理器
  • 如下,需在执行管理器中新增 oms-manage-job 执行器
xxl:
  job:
    admin:
      #调度中心部署跟地址:如调度中心集群部署存在多个地址则用逗号分隔。
      #执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调"。
      addresses: http://XXXX:XXXX/xxl-job-admin 

    #分别配置执行器的名称、ip地址、端口号
    #注意:如果配置多个执行器时,防止端口冲突
    executor:
      appname: oms-manage-job
      ip:
      port: 9901

      #执行器运行日志文件存储的磁盘位置,需要对该路径拥有读写权限
      logpath: /data/applogs
      #执行器Log文件定期清理功能,指定日志保存天数,日志文件过期自动删除。限制至少保持3天,否则功能不生效;
      #-1表示永不删除
      logretentiondays: -1

3.xxl-job地址单独可访问,启动项目时xxl-job地址500–404找不到

(1) 解决方案一:项目中引入jar包的版本问题

  • 如,我们项目中引入的 xxl-job-core:2.2.0,但是部署的是2.0.1,此时会产生上述问题
  • 将代码中的依赖的包改成2.0.1版本(注意需要改注解,版本不同注解使用有差别)

(2)解决方案二:部署搭建 2.2.0版本的xxl-job

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是SpringBoot整合Xxl-Job的完整步骤记录: 1. 引入依赖 在pom.xml文件中添加以下依赖: ```xml <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-job-core</artifactId> <version>${xxl.job.version}</version> </dependency> ``` 其中`${xxl.job.version}`为Xxl-Job的版本号。 2. 配置Xxl-Job Admin地址 在`application.properties`中添加配置: ```properties xxl.job.admin.addresses=http://localhost:8080/xxl-job-admin ``` 其中`http://localhost:8080/xxl-job-admin`为Xxl-Job Admin的访问地址。 3. 配置Executor 在`application.properties`中添加配置: ```properties xxl.job.executor.appname=my-job xxl.job.executor.address=localhost:9999 xxl.job.executor.ip= xxl.job.executor.port=9999 xxl.job.executor.logpath=/data/applogs/xxl-job/jobhandler xxl.job.executor.logretentiondays=30 ``` 其中`xxl.job.executor.appname`为执行器名称,`xxl.job.executor.address`为执行器地址,`xxl.job.executor.port`为执行器端口,`xxl.job.executor.logpath`为执行器日志路径,`xxl.job.executor.logretentiondays`为执行器日志保留天数。 4. 实现JobHandler 在项目中创建一个实现`IJobHandler`接口的类,例如: ```java @Component public class MyJobHandler extends IJobHandler { @Override public ReturnT<String> execute(String param) throws Exception { // 业务逻辑处理 return SUCCESS; } } ``` 其中`execute`方法为任务执行逻辑,`param`为任务参数。 5. 注册JobHandler 在`application.properties`中添加配置: ```properties xxl.job.executor.registrykey=my-job-handler ``` 其中`my-job-handler`为自定义的任务处理器名称,需要与上一步中创建的`MyJobHandler`类名保持一致。 6. 启动执行器 在SpringBoot启动类上添加`@EnableXxlJob`注解,启动执行器。 ```java @SpringBootApplication @EnableXxlJob public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` 以上就是SpringBoot整合Xxl-Job的完整步骤记录
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值