<!-- If you need to report a security issue please visit https://github.com/apache/dubbo/security/policy -->

- [x] I have searched the [issues](https://github.com/apache/dubbo/issues) of this repository and believe that this is not a duplicate.

### Environment

* Dubbo version: 3.0.7
* Operating System version: all
* Java version: all

### Steps to reproduce this issue

1. 使用阿里巴巴的包实现了扩展com.alibaba.dubbo.registry.RegistryFactory,并重写了方法
org.alibaba.dubbo.registry.Registry getRegistry(com.alibaba.dubbo.common.URL url)
 
目前系统数量比较多,升级dubbo3.0.7后编译失败,查看了Dubbo3中的com.alibaba.dubbo.registry.RegistryFactory,类型发现
这个类型的getRegistry的返回值变了,返回了apache的org.apache.dubbo.registry.Registry
org.apache.dubbo.registry.Registry getRegistry(com.alibaba.dubbo.common.URL url);

如果这样搞的话,我这个依赖库中的扩展就无法同时支持新老版本的getRegistry方法了使用了高版本的包重写了getRegistry这个方法低版本的包就无法用我的扩展类型

Pls. provide [GitHub address] to reproduce this issue.

### Expected Behavior

<!-- What do you expect from the above steps？-->
麻烦兼容下低版本,其他类型做的都挺好的返回值alibaba的包下面就是alibaba的类型 

### Actual Behavior

<!-- What actually happens? -->

目前alibaba的包中出现 apache的类型 自定义扩展到 同学们的开发的工具包可能是无法兼容dubbo新版本的,导致升级困难

String serviceKey = url.getServiceKey();
                FullServiceDefinition serviceDefinition = serviceDescriptor.getFullServiceDefinition(serviceKey);
                if (StringUtils.isNotEmpty(serviceKey) && serviceDefinition != null) {
                    serviceDefinition.setParameters(url.getParameters());
                    for (Map.Entry<String, MetadataReport> entry : getMetadataReports(applicationModel).entrySet()) {
                        MetadataReport metadataReport = entry.getValue();
                        if (!metadataReport.shouldReportDefinition()) {
                            logger.info("Report of service definition is disabled for " + entry.getKey());
                            continue;
                        }
                        metadataReport.storeProviderMetadata(
                            new MetadataIdentifier(
                                url.getServiceInterface(),
                                url.getVersion() == null ? "" : url.getVersion(),
                                url.getGroup() == null ? "" : url.getGroup(),
                                PROVIDER_SIDE,
                                applicationModel.getApplicationName())
                            , serviceDefinition);
                    }
                }
            } else {
                for (Map.Entry<String, MetadataReport> entry : getMetadataReports(applicationModel).entrySet()) {
                    MetadataReport metadataReport = entry.getValue();
                    if (!metadataReport.shouldReportDefinition()) {
                        logger.info("Report of service definition is disabled for " + entry.getKey());
                        continue;
                    }
                    metadataReport.storeConsumerMetadata(
                        new MetadataIdentifier(
                            url.getServiceInterface(),