今天发现了一个 quartz 在 spring cloud 下的BUG
开始并没有 加入 spring cloud ,而是 spring boot 加上 quartz 而已。
这时候是可以执行的。
版本是 spring boot :
springBootVersion = '2.0.0.M4'
下面是 配置的quartz 代码。
package com.waylau.spring.cloud.weather.config;
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.SimpleScheduleBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.waylau.spring.cloud.weather.job.WeatherDataSyncJob;
@Configuration
public class QuartzConfiguration {
private static final int TIME = 1800; // 更新频率
// JobDetail
@Bean
public JobDetail weatherDataSyncJobDetail() {
return JobBuilder.newJob(WeatherDataSyncJob.class).withIdentity("weatherDataSyncJob")
.storeDurably().build();
}
// Trigger
@Bean
public Trigger weatherDataSyncTrigger() {
SimpleScheduleBuilder schedBuilder = SimpleScheduleBuilder.simpleSchedule()
.withIntervalInSeconds(TIME).repeatForever();
//项目一启动完成就会执行
return TriggerBuilder.newTrigger().forJob(weatherDataSyncJobDetail())
.withIdentity("weatherDataSyncTrigger").withSchedule(schedBuilder).build();
}
}
其他配置就没有添加了,都是默认配置了
启动日志
2019-07-28 22:05:50.209 INFO 10176 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor
2019-07-28 22:05:50.237 INFO 10176 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
2019-07-28 22:05:50.237 INFO 10176 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.0 created.
2019-07-28 22:05:50.239 INFO 10176 --- [ main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized.
2019-07-28 22:05:50.241 INFO 10176 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.0) 'quartzScheduler' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
2019-07-28 22:05:50.241 INFO 10176 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance.
2019-07-28 22:05:50.241 INFO 10176 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.0
2019-07-28 22:05:50.242 INFO 10176 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory@57d0fc89
2019-07-28 22:05:50.441 INFO 10176 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2019-07-28 22:05:50.460 INFO 10176 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 2147483647
2019-07-28 22:05:50.461 INFO 10176 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now
2019-07-28 22:05:50.462 INFO 10176 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started.
2019-07-28 22:05:50.491 INFO 10176 --- [eduler_Worker-1] c.w.s.c.weather.job.WeatherDataSyncJob : Weather Data Sync Job. Start!
2019-07-28 22:05:50.493 INFO 10176 --- [eduler_Worker-1] c.w.s.c.weather.job.WeatherDataSyncJob : Weather Data Sync Job, cityId:101280601
2019-07-28 22:05:50.618 INFO 10176 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 9090 (http)
2019-07-28 22:05:50.630 INFO 10176 --- [ main] c.w.spring.cloud.weather.Application : Started Application in 7.627 seconds (JVM running for 9.942)
已执行
2019-07-28 22:05:51.135 INFO 10176 --- [eduler_Worker-1] c.w.s.c.weather.job.WeatherDataSyncJob : Weather Data Sync Job. End!
看到执行的 打印 “已执行” 就是已经执行了。
但是 如果 加入 spring cloud 作为一个微服务
下面是启动类
**
* 即是生产者也是消费者(消费城市)
*/
@SpringBootApplication
@EnableDiscoveryClient
@EnableFeignClients
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
其他就没有什么改动了
下面是启动日志
2019-07-28 22:14:57.653 INFO 8824 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor
2019-07-28 22:14:57.683 INFO 8824 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
2019-07-28 22:14:57.683 INFO 8824 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.0 created.
2019-07-28 22:14:57.685 INFO 8824 --- [ main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized.
2019-07-28 22:14:57.688 INFO 8824 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.0) 'quartzScheduler' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
2019-07-28 22:14:57.688 INFO 8824 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance.
2019-07-28 22:14:57.689 INFO 8824 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.0
2019-07-28 22:14:57.689 INFO 8824 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory@748a654a
2019-07-28 22:14:59.379 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2019-07-28 22:14:59.401 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'environmentManager' has been autodetected for JMX exposure
2019-07-28 22:14:59.405 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'configurationPropertiesRebinder' has been autodetected for JMX exposure
2019-07-28 22:14:59.407 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'refreshScope' has been autodetected for JMX exposure
2019-07-28 22:14:59.413 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'environmentManager': registering with JMX server as MBean [org.springframework.cloud.context.environment:name=environmentManager,type=EnvironmentManager]
2019-07-28 22:14:59.446 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'refreshScope': registering with JMX server as MBean [org.springframework.cloud.context.scope.refresh:name=refreshScope,type=RefreshScope]
2019-07-28 22:14:59.475 INFO 8824 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'configurationPropertiesRebinder': registering with JMX server as MBean [org.springframework.cloud.context.properties:name=configurationPropertiesRebinder,context=6399551e,type=ConfigurationPropertiesRebinder]
2019-07-28 22:14:59.593 INFO 8824 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 0
2019-07-28 22:14:59.616 INFO 8824 --- [ main] o.s.c.n.eureka.InstanceInfoFactory : Setting initial instance status as: STARTING
2019-07-28 22:14:59.749 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Initializing Eureka in region us-east-1
2019-07-28 22:14:59.895 INFO 8824 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using JSON encoding codec LegacyJacksonJson
2019-07-28 22:14:59.895 INFO 8824 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using JSON decoding codec LegacyJacksonJson
2019-07-28 22:15:00.170 INFO 8824 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using XML encoding codec XStreamXml
2019-07-28 22:15:00.170 INFO 8824 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using XML decoding codec XStreamXml
2019-07-28 22:15:00.671 INFO 8824 --- [ main] c.n.d.s.r.aws.ConfigClusterResolver : Resolving eureka endpoints via configuration
2019-07-28 22:15:01.395 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Disable delta property : false
2019-07-28 22:15:01.396 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Single vip registry refresh property : null
2019-07-28 22:15:01.396 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Force full registry fetch : false
2019-07-28 22:15:01.396 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Application is null : false
2019-07-28 22:15:01.396 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Registered Applications size is zero : true
2019-07-28 22:15:01.396 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Application version is -1: true
2019-07-28 22:15:01.396 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Getting all instance registry info from the eureka server
2019-07-28 22:15:01.821 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : The response status is 200
2019-07-28 22:15:01.825 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Starting heartbeat executor: renew interval is: 30
2019-07-28 22:15:01.831 INFO 8824 --- [ main] c.n.discovery.InstanceInfoReplicator : InstanceInfoReplicator onDemand update allowed rate per min is 4
2019-07-28 22:15:01.839 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Discovery Client initialized at timestamp 1564323301839 with initial instances count: 4
2019-07-28 22:15:01.884 INFO 8824 --- [ main] o.s.c.n.e.s.EurekaServiceRegistry : Registering application msa-weather-collection-eureka-feign with eureka with status UP
2019-07-28 22:15:01.886 INFO 8824 --- [ main] com.netflix.discovery.DiscoveryClient : Saw local status change event StatusChangeEvent [timestamp=1564323301886, current=UP, previous=STARTING]
2019-07-28 22:15:01.892 INFO 8824 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_MSA-WEATHER-COLLECTION-EUREKA-FEIGN/DESKTOP-UINEBG0.mshome.net:msa-weather-collection-eureka-feign:8081: registering service...
2019-07-28 22:15:01.893 INFO 8824 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 2147483647
2019-07-28 22:15:01.893 INFO 8824 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now
2019-07-28 22:15:01.893 INFO 8824 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started.
2019-07-28 22:15:02.001 INFO 8824 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_MSA-WEATHER-COLLECTION-EUREKA-FEIGN/DESKTOP-UINEBG0.mshome.net:msa-weather-collection-eureka-feign:8081 - registration status: 204
2019-07-28 22:15:02.057 INFO 8824 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http)
2019-07-28 22:15:02.058 INFO 8824 --- [ main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8081
2019-07-28 22:15:02.068 INFO 8824 --- [ main] c.w.spring.cloud.weather.Application : Started Application in 20.381 seconds (JVM running for 23.695)
天啊,发现了 , quartz 没有 报错了,可是 任务也没有执行!!!
可是明明 quartz 看起来是初始化成功了啊!
上网找一下,有没有 其他人有这个问题? 结果发现并没有什么 有用的信息。
那我就自己分析一下了,试着解决看看。
从启动 日志上面来看,发现是在 初始化 quartz的时候, 同时在 初始化 spring cloud 的一些组件
而且最后时候 多了一个
Updating port to 8081
这个 信息,和之前 没有spring cloud 是 完全不一样的。怎么还有更新端口??
会不会是 spring boot 和quartz 都初始化好了,但是在 初始化 spring cloud 的时候 又需要额外的处理。
导致之前的 构建spring boot 和quartz 某些东西失效了呢?
也就是说, 不应该让 quartz 在spring cloud 未初始化完全 之前执行,或者更好的让 quartz 在spring cloud 初始化完全之后再去构建 那是最好了。
于是我试着改变 任务的时间 调度
return TriggerBuilder.newTrigger().forJob(weatherDataSyncJobDetail())
.withIdentity("weatherDataSyncTrigger").withSchedule(CronScheduleBuilder.cronSchedule("*/10 * * * * ?")).build();
让任务 10s 之后 再执行。然后每10s 执行一次 。
2019-07-28 22:24:14.690 INFO 15836 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor
2019-07-28 22:24:14.713 INFO 15836 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
2019-07-28 22:24:14.713 INFO 15836 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.0 created.
2019-07-28 22:24:14.715 INFO 15836 --- [ main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized.
2019-07-28 22:24:14.717 INFO 15836 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.0) 'quartzScheduler' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
2019-07-28 22:24:14.717 INFO 15836 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance.
2019-07-28 22:24:14.717 INFO 15836 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.0
2019-07-28 22:24:14.718 INFO 15836 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory@650c405c
2019-07-28 22:24:15.994 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2019-07-28 22:24:16.009 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'environmentManager' has been autodetected for JMX exposure
2019-07-28 22:24:16.011 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'configurationPropertiesRebinder' has been autodetected for JMX exposure
2019-07-28 22:24:16.013 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Bean with name 'refreshScope' has been autodetected for JMX exposure
2019-07-28 22:24:16.016 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'environmentManager': registering with JMX server as MBean [org.springframework.cloud.context.environment:name=environmentManager,type=EnvironmentManager]
2019-07-28 22:24:16.037 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'refreshScope': registering with JMX server as MBean [org.springframework.cloud.context.scope.refresh:name=refreshScope,type=RefreshScope]
2019-07-28 22:24:16.057 INFO 15836 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Located managed bean 'configurationPropertiesRebinder': registering with JMX server as MBean [org.springframework.cloud.context.properties:name=configurationPropertiesRebinder,context=6399551e,type=ConfigurationPropertiesRebinder]
2019-07-28 22:24:16.123 INFO 15836 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 0
2019-07-28 22:24:16.136 INFO 15836 --- [ main] o.s.c.n.eureka.InstanceInfoFactory : Setting initial instance status as: STARTING
2019-07-28 22:24:16.216 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Initializing Eureka in region us-east-1
2019-07-28 22:24:16.309 INFO 15836 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using JSON encoding codec LegacyJacksonJson
2019-07-28 22:24:16.309 INFO 15836 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using JSON decoding codec LegacyJacksonJson
2019-07-28 22:24:16.452 INFO 15836 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using XML encoding codec XStreamXml
2019-07-28 22:24:16.452 INFO 15836 --- [ main] c.n.d.provider.DiscoveryJerseyProvider : Using XML decoding codec XStreamXml
2019-07-28 22:24:16.753 INFO 15836 --- [ main] c.n.d.s.r.aws.ConfigClusterResolver : Resolving eureka endpoints via configuration
2019-07-28 22:24:17.189 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Disable delta property : false
2019-07-28 22:24:17.190 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Single vip registry refresh property : null
2019-07-28 22:24:17.190 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Force full registry fetch : false
2019-07-28 22:24:17.190 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Application is null : false
2019-07-28 22:24:17.190 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Registered Applications size is zero : true
2019-07-28 22:24:17.190 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Application version is -1: true
2019-07-28 22:24:17.190 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Getting all instance registry info from the eureka server
2019-07-28 22:24:17.393 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : The response status is 200
2019-07-28 22:24:17.395 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Starting heartbeat executor: renew interval is: 30
2019-07-28 22:24:17.398 INFO 15836 --- [ main] c.n.discovery.InstanceInfoReplicator : InstanceInfoReplicator onDemand update allowed rate per min is 4
2019-07-28 22:24:17.402 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Discovery Client initialized at timestamp 1564323857402 with initial instances count: 5
2019-07-28 22:24:17.424 INFO 15836 --- [ main] o.s.c.n.e.s.EurekaServiceRegistry : Registering application msa-weather-collection-eureka-feign with eureka with status UP
2019-07-28 22:24:17.424 INFO 15836 --- [ main] com.netflix.discovery.DiscoveryClient : Saw local status change event StatusChangeEvent [timestamp=1564323857424, current=UP, previous=STARTING]
2019-07-28 22:24:17.427 INFO 15836 --- [ main] o.s.c.support.DefaultLifecycleProcessor : Starting beans in phase 2147483647
2019-07-28 22:24:17.427 INFO 15836 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_MSA-WEATHER-COLLECTION-EUREKA-FEIGN/DESKTOP-UINEBG0.mshome.net:msa-weather-collection-eureka-feign:8081: registering service...
2019-07-28 22:24:17.427 INFO 15836 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now
2019-07-28 22:24:17.427 INFO 15836 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started.
2019-07-28 22:24:17.478 INFO 15836 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_MSA-WEATHER-COLLECTION-EUREKA-FEIGN/DESKTOP-UINEBG0.mshome.net:msa-weather-collection-eureka-feign:8081 - registration status: 204
2019-07-28 22:24:17.498 INFO 15836 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http)
2019-07-28 22:24:17.499 INFO 15836 --- [ main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8081
2019-07-28 22:24:17.503 INFO 15836 --- [ main] c.w.spring.cloud.weather.Application : Started Application in 17.069 seconds (JVM running for 20.108)
2019-07-28 22:24:20.024 INFO 15836 --- [SchedulerThread] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@2cc55001: startup date [Sun Jul 28 22:24:20 CST 2019]; parent: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@6399551e
2019-07-28 22:24:20.090 INFO 15836 --- [SchedulerThread] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-07-28 22:24:20.323 INFO 15836 --- [eduler_Worker-1] c.w.s.c.weather.job.WeatherDataSyncJob : Weather Data Sync Job. Start!
2019-07-28 22:24:20.333 INFO 15836 --- [eduler_Worker-1] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@50ca89f2: startup date [Sun Jul 28 22:24:20 CST 2019]; parent: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@6399551e
2019-07-28 22:24:20.449 INFO 15836 --- [eduler_Worker-1] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-07-28 22:24:20.864 INFO 15836 --- [eduler_Worker-1] c.netflix.config.ChainedDynamicProperty : Flipping property: msa-weather-city-eureka.ribbon.ActiveConnectionsLimit to use NEXT property: niws.loadbalancer.availabilityFilteringRule.activeConnectionsLimit = 2147483647
2019-07-28 22:24:20.898 INFO 15836 --- [eduler_Worker-1] c.n.u.concurrent.ShutdownEnabledTimer : Shutdown hook installed for: NFLoadBalancer-PingTimer-msa-weather-city-eureka
2019-07-28 22:24:20.958 INFO 15836 --- [eduler_Worker-1] c.netflix.loadbalancer.BaseLoadBalancer : Client: msa-weather-city-eureka instantiated a LoadBalancer: DynamicServerListLoadBalancer:{NFLoadBalancer:name=msa-weather-city-eureka,current list of Servers=[],Load balancer stats=Zone stats: {},Server stats: []}ServerList:null
2019-07-28 22:24:20.973 INFO 15836 --- [eduler_Worker-1] c.n.l.DynamicServerListLoadBalancer : Using serverListUpdater PollingServerListUpdater
2019-07-28 22:24:21.027 INFO 15836 --- [eduler_Worker-1] c.netflix.config.ChainedDynamicProperty : Flipping property: msa-weather-city-eureka.ribbon.ActiveConnectionsLimit to use NEXT property: niws.loadbalancer.availabilityFilteringRule.activeConnectionsLimit = 2147483647
2019-07-28 22:24:21.031 INFO 15836 --- [eduler_Worker-1] c.n.l.DynamicServerListLoadBalancer : DynamicServerListLoadBalancer for client msa-weather-city-eureka initialized: DynamicServerListLoadBalancer:{NFLoadBalancer:name=msa-weather-city-eureka,current list of Servers=[DESKTOP-UINEBG0.mshome.net:8082],Load balancer stats=Zone stats: {defaultzone=[Zone:defaultzone; Instance count:1; Active connections count: 0; Circuit breaker tripped count: 0; Active connections per server: 0.0;]
},Server stats: [[Server:DESKTOP-UINEBG0.mshome.net:8082; Zone:defaultZone; Total Requests:0; Successive connection failure:0; Total blackout seconds:0; Last connection made:Thu Jan 01 08:00:00 CST 1970; First connection made: Thu Jan 01 08:00:00 CST 1970; Active Connections:0; total failure count in last (1000) msecs:0; average resp time:0.0; 90 percentile resp time:0.0; 95 percentile resp time:0.0; min resp time:0.0; max resp time:0.0; stddev resp time:0.0]
]}ServerList:org.springframework.cloud.netflix.ribbon.eureka.DomainExtractingServerList@310ca769
2019-07-28 22:24:21.346 INFO 15836 --- [eduler_Worker-1] c.w.s.c.weather.job.WeatherDataSyncJob
已执行
2019-07-28 22:24:21.757 INFO 15836 --- [eduler_Worker
发现已经可以执行定时任务了,
特别发现了 多一些信息
2019-07-28 22:24:17.478 INFO 15836 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_MSA-WEATHER-COLLECTION-EUREKA-FEIGN/DESKTOP-UINEBG0.mshome.net:msa-weather-collection-eureka-feign:8081 - registration status: 204
2019-07-28 22:24:17.498 INFO 15836 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8081 (http)
2019-07-28 22:24:17.499 INFO 15836 --- [ main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8081
2019-07-28 22:24:17.503 INFO 15836 --- [ main] c.w.spring.cloud.weather.Application : Started Application in 17.069 seconds (JVM running for 20.108)
2019-07-28 22:24:20.024 INFO 15836 --- [SchedulerThread] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@2cc55001: startup date [Sun Jul 28 22:24:20 CST 2019]; parent: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@6399551e
2019-07-28 22:24:20.090 INFO 15836 --- [SchedulerThread] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2019-07-28 22:24:20.323 INFO 15836 --- [eduler_Worker-1] c.w.s.c.weather.job.WeatherDataSyncJob : Weather Data Sync Job. Start!
然后我试着把 时间改为 1S 之后 执行也是 没问题的。
大概也是猜到,可能是 之前的 spring cloud 构建时候,某些原因阻塞了 quartz的 执行任务的线程或者是 应用 上下文无效了 导致的问题