public ZkService chooseService() {
        if (zkService != null) {
            return zkService;
        }
        synchronized (this) {
            if (zkService == null) {
                final String version = lbConfig.getZkServerVersion();
                if (version.startsWith(VERSION_34_PREFIX)) {
                    zkService = PluginServiceManager.getPluginService(ZkService34.class);
                }
            }
        }
        if (zkService == null) {
            throw new IllegalArgumentException(String.format(Locale.ENGLISH,
                    "Can not get target zookeeper client version(%s) service", lbConfig.getZkServerVersion()));
        }
        return zkService;
    }
@Test(expected = IllegalArgumentException.class)
    public void chooseServiceWithNoVersion() {
        lbConfig.setZkServerVersion("9.9.9");
        final ZkServiceManager zkServiceManager = new ZkServiceManager();
        zkServiceManager.chooseService();
    }