### Environment

* Dubbo version: 3.0
StaticDirectory.destroy方法最后要对列表做clear操作，但是ReferenceConfig的createInvokerForLocal构造StaticDirectory传入的列表类型是Collections.singletonList，执行clear就会抛异常：
```
[08/10/21 07:35:39:302 UTC] main  WARN config.ReferenceConfig:  [DUBBO] Unexpected error occurred when destroy invoker of ReferenceConfig(null)., dubbo version: 3.0.4-SNAPSHOT, current host: 172.19.112.1
java.lang.UnsupportedOperationException
	at java.util.AbstractList.remove(AbstractList.java:161)
	at java.util.AbstractList$Itr.remove(AbstractList.java:374)
	at java.util.AbstractList.removeRange(AbstractList.java:571)
	at java.util.AbstractList.clear(AbstractList.java:234)
	at org.apache.dubbo.rpc.cluster.directory.StaticDirectory.destroy(StaticDirectory.java:91)
	at org.apache.dubbo.rpc.cluster.support.AbstractClusterInvoker.destroy(AbstractClusterInvoker.java:113)
	at org.apache.dubbo.rpc.cluster.support.wrapper.MockClusterInvoker.destroy(MockClusterInvoker.java:79)
	at org.apache.dubbo.config.ReferenceConfig.destroy(ReferenceConfig.java:219)
```
if (UrlUtils.isRegistry(url)) {
                    // 
                    registryUrl = url;
                }
            }
            if (registryUrl != null) {
                // 
                // 
                String cluster = registryUrl.getParameter(CLUSTER_KEY, ZoneAwareCluster.NAME);
                // 
                // 
                invoker = Cluster.getCluster(registryUrl.getScopeModel(), cluster, false).join(new StaticDirectory(registryUrl, invokers), false);
            } else {
                // 
                if (CollectionUtils.isEmpty(invokers)) {
                    throw new IllegalArgumentException("invokers == null");
                }
                URL curUrl = invokers.get(0).getUrl();
                String cluster = curUrl.getParameter(CLUSTER_KEY, Cluster.DEFAULT);
                invoker = Cluster.getCluster(scopeModel, cluster).join(new StaticDirectory(curUrl, invokers), true);
            }
        }
    }
    private void checkInvokerAvailable() throws IllegalStateException {
        if (shouldCheck() && !invoker.isAvailable()) {
            invoker.destroy();
            throw new IllegalStateException("Should has at least one way to know which services this interface belongs to," +
                " subscription url: " + invoker.getUrl());
        }
    }