Pre-check

  • [x] I am sure that all the content I provide is in English.

Search before asking

  • [x] I had searched in the issues and found no similar feature requirement.

Apache Dubbo Component

Java SDK (apache/dubbo)

Descriptions

Currently, dubbo-demo-api-consumer and dubbo-demo-api-provider doesn't have the metadata-report and config-center dependencies like dubbo-metadata-report-zookeeper.

Because of this, when testing the dubbo.application.register-mode = instance mode in dubbo-demo-api-provider, the metadata would be missing in the zookeeper. This would result in the following error when starting dubbo-demo-api-consumer.

It would be better to add dubbo-metadata-report-zookeeper and dubbo-metadata-report-zookeeper to the demo as default. This will be more convenient for debugging.

17:05:12.385 |-INFO  [main] ubbo.config.deploy.DefaultModuleDeployer:149 -|  [DUBBO] Dubbo Module[1.1.1] has been initialized!, dubbo version: 3.3.6-SNAPSHOT, current host: 172.29.226.203
17:05:12.417 |-ERROR [main] config.deploy.DefaultApplicationDeployer:    -|  [DUBBO] Dubbo Application[1.1](dubbo-demo-api-provider) start failure, dubbo version: 3.3.6-SNAPSHOT, current host: 172.29.226.203, error code: 5-14. This may be caused by , go to https://dubbo.apache.org/faq/5/14 to find instructions. 
java.lang.IllegalStateException: No such extension org.apache.dubbo.metadata.report.MetadataReportFactory by name zookeeper, no related exception was found, please check whether related SPI module is missing.
    at org.apache.dubbo.common.extension.ExtensionLoader.findException(ExtensionLoader.java:769) ~[classes/:?]
    at org.apache.dubbo.common.extension.ExtensionLoader.createExtension(ExtensionLoader.java:776) ~[classes/:?]
    at org.apache.dubbo.common.extension.ExtensionLoader.getExtension(ExtensionLoader.java:576) ~[classes/:?]
    at org.apache.dubbo.common.extension.ExtensionLoader.getExtension(ExtensionLoader.java:550) ~[classes/:?]
    at org.apache.dubbo.metadata.report.MetadataReportFactory$Adaptive.getMetadataReport(MetadataReportFactory$Adaptive.java) ~[classes/:?]
    at org.apache.dubbo.metadata.report.MetadataReportInstance.init(MetadataReportInstance.java:110) ~[classes/:?]
    at org.apache.dubbo.metadata.report.MetadataReportInstance.init(MetadataReportInstance.java:87) ~[classes/:?]
    at org.apache.dubbo.config.deploy.DefaultApplicationDeployer.startMetadataCenter(DefaultApplicationDeployer.java:338) ~[classes/:?]
    at org.apache.dubbo.config.deploy.DefaultApplicationDeployer.initialize(DefaultApplicationDeployer.java:238) [classes/:?]
    at org.apache.dubbo.config.deploy.DefaultApplicationDeployer.start(DefaultApplicationDeployer.java:706) [classes/:?]
    at org.apache.dubbo.config.bootstrap.DubboBootstrap.start(DubboBootstrap.java:230) [classes/:?]
    at org.apache.dubbo.config.bootstrap.DubboBootstrap.start(DubboBootstrap.java:219) [classes/:?]
    at org.apache.dubbo.demo.provider.Application.startWithBootstrap(Application.java:54) [classes/:?]
    at org.apache.dubbo.demo.provider.Application.main(Application.java:34) [classes/:?]
17:05:12.419 |-INFO  [DubboShutdownHook] rg.apache.dubbo.config.DubboShutdownHook:79  -|  [DUBBO] Run shutdown hook now., dubbo version: 3.3.6-SNAPSHOT, current host: 172.29.226.203
Exception in thread "main" java.lang.IllegalStateException: No such extension org.apache.dubbo.metadata.report.MetadataReportFactory by name zookeeper, no related exception was found, please check whether related SPI module is missing.
    at org.apache.dubbo.common.extension.ExtensionLoader.findException(ExtensionLoader.java:769)
    at org.apache.dubbo.common.extension.ExtensionLoader.createExtension(ExtensionLoader.java:776)
    at org.apache.dubbo.common.extension.ExtensionLoader.getExtension(ExtensionLoader.java:576)
    at org.apache.dubbo.common.extension.ExtensionLoader.getExtension(ExtensionLoader.java:550)
    at org.apache.dubbo.metadata.report.MetadataReportFactory$Adaptive.getMetadataReport(MetadataReportFactory$Adaptive.java)
    at org.apache.dubbo.metadata.report.MetadataReportInstance.init(MetadataReportInstance.java:110)
    at org.apache.dubbo.metadata.report.MetadataReportInstance.init(MetadataReportInstance.java:87)
    at org.apache.dubbo.config.deploy.DefaultApplicationDeployer.startMetadataCenter(DefaultApplicationDeployer.java:338)
    at org.apache.dubbo.config.deploy.DefaultApplicationDeployer.initialize(DefaultApplicationDeployer.java:238)
    at org.apache.dubbo.config.deploy.DefaultApplicationDeployer.start(DefaultApplicationDeployer.java:706)
    at org.apache.dubbo.config.bootstrap.DubboBootstrap.start(DubboBootstrap.java:230)
    at org.apache.dubbo.config.bootstrap.DubboBootstrap.start(DubboBootstrap.java:219)
    at org.apache.dubbo.demo.provider.Application.startWithBootstrap(Application.java:54)
    at org.apache.dubbo.demo.provider.Application.main(Application.java:34)

Related issues

No response

Are you willing to submit a pull request to fix on your own?

  • [x] Yes I am willing to submit a pull request on my own!

Code of Conduct

Comment From: lingyufei

@zrlw I can help with this if you think it makes sense to add dubbo-metadata-report-zookeeper and dubbo-metadata-report-zookeeper to the demo as default