我正在尝试使用Apache Curator库为ZooKeeper编写单元测试。我使用的是curator-test 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)我已经尝试了多种策展人版本和ZooKeeper版本的组合。目前,我正在使用以下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>任何帮助都是非常感谢的!
发布于 2020-07-30 16:54:42
https://github.com/apache/curator/pull/248/commits/e37cb59c1e9b7ac7f21d3c3444b6bb789a3e3708
如果要将策展人的{{TestingServer}}与ZooKeeper 3.4.x一起使用,则必须使用其较旧版本。
发布于 2020-05-08 12:11:14
我注意到您并没有从配方依赖中排除ZooKeeper。而且,您只显示了部分pom。你读过这篇文档吗?http://curator.apache.org/zk-compatibility.html -请参阅“使用ZooKeeper 3.4.x进行测试”一节。
https://stackoverflow.com/questions/61667200
复制相似问题