https://github.com/apache/dubbo/blob/532ce72f8377abf8ff659430b86e0919c9aff562/dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ServiceConfig.java#L240-L248 

What ever user use `instance` service discovery or `interface` service discovery, we also publish service name mapping info. 
But service name mapping need metadata report dependency, so if some one just use `interface` service discovery, the user still need need metadata report dependency.

Here we add a judgement, check current service config use `instance` service discovery or not, to judge publish service name mapping or not.

String DISABLED_KEY = "disabled";
    String DUBBO_PROPERTIES_KEY = "dubbo.properties.file";
    String DEFAULT_DUBBO_PROPERTIES = "dubbo.properties";
    String DUBBO_MIGRATION_KEY = "dubbo.migration.file";
    String DEFAULT_DUBBO_MIGRATION_FILE = "dubbo-migration.yaml";
    String ANY_VALUE = "*";
    /**
     * @since 2.7.8
     */
    char COMMA_SEPARATOR_CHAR = ',';
    String COMMA_SEPARATOR = ",";
    String DOT_SEPARATOR = ".";
    Pattern COMMA_SPLIT_PATTERN = Pattern.compile("\\s*[,]+\\s*");
    String PATH_SEPARATOR = "/";
    String PROTOCOL_SEPARATOR = "://";
    String PROTOCOL_SEPARATOR_ENCODED = URL.encode(PROTOCOL_SEPARATOR);
    String REGISTRY_SEPARATOR = "|";
    Pattern REGISTRY_SPLIT_PATTERN = Pattern.compile("\\s*[|;]+\\s*");
    Pattern D_REGISTRY_SPLIT_PATTERN = Pattern.compile("\\s*[|]+\\s*");
    String SEMICOLON_SEPARATOR = ";";
    Pattern SEMICOLON_SPLIT_PATTERN = Pattern.compile("\\s*[;]+\\s*");
    Pattern EQUAL_SPLIT_PATTERN = Pattern.compile("\\s*[=]+\\s*");
    String DEFAULT_PROXY = "javassist";
    String DEFAULT_DIRECTORY = "dubbo";
    String PROTOCOL_KEY = "protocol";
    String DEFAULT_PROTOCOL = "dubbo";
    String DEFAULT_THREAD_NAME = "Dubbo";
    int DEFAULT_CORE_THREADS = 0;
    int DEFAULT_THREADS = 200;
    String EXECUTOR_SERVICE_COMPONENT_KEY = ExecutorService.class.getName();