现象Eureka client启动时出现“No URLs will be polled as dynamic configuration sources”警告, 并提示:需要配置archaius.configurationSource.additionalURL或创建config.properties。 WARN 1722 --- [ main] c.n.c.sources.URLConfigurationSource : No URLs will be polled as dynamic configuration sources.INFO 1722 --- [ main] c.n.c.sources.URLConfigurationSource : To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.WARN 1722 --- [ main] c.n.c.sources.URLConfigurationSource : No URLs will be polled as dynamic configuration sources.INFO 1722 --- [ main] c.n.c.sources.URLConfigurationSource : To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath. 分析根据错误提示可以找到com.netflix.config.sources.URLConfigurationSource类,其中包含初始化过程,这里就不细说了。 分析可知道由于eureka-client包内引入了netflix-archaius包,默认需要加载配置源,无法加载配置元导致系统警告。 netflix-archaius与spring-config和apollo等配置组建类似。 解决办法方法一(推荐)排除netflix-archaius引入,在不使用archaius组件前提下。 入还引入了其他netflix组件,可能也会有archaius引入,需要一起exclusion。 <!-- 基于eureka的功能 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId><exclusions><exclusion><artifactId>spring-cloud-starter-netflix-archaius</artifactId><groupId>org.springframework.cloud</groupId></exclusion></exclusions></dependency><!-- 基于ribbon的功能 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-ribbon</artifactId><exclusions><exclusion><artifactId>spring-cloud-netflix-archaius</artifactId><groupId>org.springframework.cloud</groupId></exclusion></exclusions></dependency> 方法二在resources目录下创建一个空的config.properties文件。 方法三通过启动参数“-Darchaius.configurationSource.additionalUrls”制定配置文件 -Darchaius.configurationSource.additionalUrls="classpath:extra.properties,file:///home/user/other-extra.properties" |
|
来自: vnxy001 > 《021springboot》