Closed liunancun closed 5 years ago
yml文件配置确实会出问题,我使用同样的参数配置成properties格式后,服务就正常了
确实是的,源代码的取值和metadata.json不一致
我也发现了,这样就可以了 @EnableDubbo(scanBasePackages = "XXX")
Please add Dubbo 2.6.5 in order to override indirectly dependencies:
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>0.2.0</version>
</dependency>
<!-- Dubbo -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.6.5</version>
</dependency>
<!-- Spring Context Extras -->
<dependency>
<groupId>com.alibaba.spring</groupId>
<artifactId>spring-context-support</artifactId>
<version>1.0.2</version>
</dependency>
There was a legacy issue in Dubbo.
在spring-configuration-metadata.json文件中定义的是dubbo.scan.base-packages { "sourceType": "com.alibaba.boot.dubbo.autoconfigure.DubboScanProperties", "name": "dubbo.scan.base-packages", "description": "The basePackages to scan , the multiple-value is delimited by comma\n\n @see EnableDubbo#scanBasePackages()", "type": "java.util.Set"
}
实际在代码中取值的时候用的又是dubbo.scan.basePackages Set packagesToScan = environment.getProperty(BASE_PACKAGES_PROPERTY_NAME, Set.class, emptySet());
public static final String BASE_PACKAGES_PROPERTY_NAME = DUBBO_SCAN_PREFIX + PROPERTY_NAME_SEPARATOR + "basePackages";
导致无法正确扫描,无法保留服务。