Apache zookeeper Apache管理员ZooKeeper单元测试给出错误

Apache zookeeper Apache管理员ZooKeeper单元测试给出错误,apache-zookeeper,apache-curator,Apache Zookeeper,Apache Curator,我正在尝试使用ApacheCurator库为ZooKeeper编写单元测试。我正在使用curator测试maven依赖性。我的代码如下所示: final TestingCluster testingCluster = new TestingCluster(3); testingCluster.start(); 但我得到了一个错误: Exception in thread "Thread-0" java.lang.NoSuchFieldError: configFileStr a

我正在尝试使用ApacheCurator库为ZooKeeper编写单元测试。我正在使用curator测试maven依赖性。我的代码如下所示:

    final TestingCluster testingCluster = new TestingCluster(3);
    testingCluster.start();
但我得到了一个错误:

Exception in thread "Thread-0" java.lang.NoSuchFieldError: configFileStr
at org.apache.curator.test.QuorumConfigBuilder$1.<init>(QuorumConfigBuilder.java:142)
at org.apache.curator.test.QuorumConfigBuilder.buildConfig(QuorumConfigBuilder.java:137)
at org.apache.curator.test.TestingZooKeeperServer$1.run(TestingZooKeeperServer.java:157)
at java.lang.Thread.run(Thread.java:748)
线程“thread-0”java.lang.NoSuchFieldError中的异常:configFileStr 位于org.apache.curator.test.QuorumConfigBuilder$1。(QuorumConfigBuilder.java:142) 位于org.apache.curator.test.QuorumConfigBuilder.buildConfig(QuorumConfigBuilder.java:137) 在org.apache.curator.test.TestingZooKeeperServer$1.run上(TestingZooKeeperServer.java:157) 运行(Thread.java:748) 我尝试了多种馆长版本到动物园管理员版本的组合。目前,我正在使用以下maven依赖项:

    <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-recipes</artifactId>
        <version>4.3.0</version>
        <exclusions>
            <exclusion>  <!-- declare the exclusion here -->
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>zookeeper</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-framework</artifactId>
        <version>4.3.0</version>
        <exclusions>
            <exclusion>  <!-- declare the exclusion here -->
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>zookeeper</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-client</artifactId>
        <version>4.3.0</version>
        <exclusions>
            <exclusion>  <!-- declare the exclusion here -->
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>zookeeper</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.apache.curator</groupId>
        <artifactId>curator-x-async</artifactId>
        <version>4.3.0</version>
        <exclusions>
            <exclusion>  <!-- declare the exclusion here -->
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>zookeeper</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.apache.zookeeper/zookeeper -->
    <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>3.4.13</version>
    </dependency>

org.apache.curator
馆长食谱
4.3.0
org.apache.zookeeper
动物园管理员
org.apache.curator
馆长框架
4.3.0
org.apache.zookeeper
动物园管理员
org.apache.curator
馆长客户
4.3.0
org.apache.zookeeper
动物园管理员
org.apache.curator
策展人-x-async
4.3.0
org.apache.zookeeper
动物园管理员
org.apache.zookeeper
动物园管理员
3.4.13

非常感谢您的帮助

我注意到您没有将ZooKeeper排除在食谱依赖项之外。此外,您只显示部分pom。你看过这份文件了吗请参阅“使用ZooKeeper 3.4.x进行测试”一节。我注意到您没有将ZooKeeper排除在配方依赖项之外。此外,您只显示部分pom。你看过这份文件了吗请参阅“使用ZooKeeper 3.4.x进行测试”一节

如果您希望在ZooKeeper 3.4.x中使用管理员的{{TestingServer},则必须使用较旧版本。


如果你想在ZooKeeper 3.4.x中使用Curator的{{TestingServer},你必须使用它的旧版本。

我更新了我的maven依赖项-从配方中排除ZK。我现在在org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:138)在org.apache.curator.test.TestingZooKeeperServer$1.run(TestingZooKeeperServer.java:148)在java.lang.Thread.run(Thread.java:748)上得到
。对ZK实例的数量有任何限制吗?我更新了我的maven依赖项-从配方中排除ZK。我现在在org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:138)在org.apache.curator.test.TestingZooKeeperServer$1.run(TestingZooKeeperServer.java:148)在java.lang.Thread.run(Thread.java:748)上得到
。ZK实例的数量是否有任何限制?