一、maven升级版本
<!-- xxl-job包 -->
<dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>2.4.1</version>
</dependency>
二、在nacos对应服务的配置文件增加accessToken配置,否则连接异常
xxl:job:admin:addresses: ${XXL_SERVER:http://xx.xxx.xxx.xxx:8083/xxl-job-admin}executor:appname: cxxc-sxxxxxe-txxxxxxeip:port: 9997logpath: /data/cxxc/xxl-job/logslogretentiondays: -1accessToken: xxxxxxb_xx_xxxx_xxxxxx
三、在xxl_job的config文件增加accessToken的读取
import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** xxl-job配置* @Author xxx* @Date 2024/02/04 12:34*/
@Configuration
@Slf4j
public class XxlJobConfig {@Value("${xxl.job.admin.addresses}")private String adminAddresses;@Value("${xxl.job.executor.appname}")private String appName;@Value("${xxl.job.executor.logpath}")private String logPath;@Value("${xxl.job.executor.logretentiondays}")private int logRetentionDays;//V2.4.1需增加此处配置读取-1@Value("${xxl.job.accessToken}")private String accessToken;@Bean(initMethod = "start", destroyMethod = "destroy")public XxlJobSpringExecutor xxlJobExecutor() {log.info(">>>>>>>>>>> xxl-job config init.");XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();xxlJobSpringExecutor.setAdminAddresses(adminAddresses);xxlJobSpringExecutor.setAppname(appName);xxlJobSpringExecutor.setLogPath(logPath);xxlJobSpringExecutor.setAccessToken(accessToken); //V2.4.1需增加此处配置读取-2xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);return xxlJobSpringExecutor;}
}
最后提交并重启服务,看是否自动注册成功
通过查看任务执行器,对应服务已自动注册成功,且执行该服务下定时任务也可以正常执行,且日志也显示成功,那么说明新版本已升级成功
三、遇到的问题
在升级版本,增加配置文件配置后,重启服务,发现提示access token不对,发现配置也对,但是一直刷这个日志,后来才发现,是上述第三步没有执行,没有对新增的access token进行读取,导致注册xxl-job异常,后来增加此配置,重启服务,发现服务正常自动注册了,且定时任务与执行日志都现实成功,问题也解决了。