Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Pact JVM Junit使用者编译错误_Java_Junit_Consumer_Pact - Fatal编程技术网

Java Pact JVM Junit使用者编译错误

Java Pact JVM Junit使用者编译错误,java,junit,consumer,pact,Java,Junit,Consumer,Pact,我正在使用JVm Junit库为Pact编写用户端代码。然而,在生产线上: MockProviderConfig=MockProviderConfig.createDefault; 我发现错误createDefault不是未定义的MockProviderConfig类型 我该怎么做才能继续 我的POM文件如下所示: http://maven.apache.org/xsd/maven-4.0.0.xsd> 4.0.0 消费者协会0805 消费者_080517 0.0.1-快照 战争 在版本3.3.

我正在使用JVm Junit库为Pact编写用户端代码。然而,在生产线上: MockProviderConfig=MockProviderConfig.createDefault; 我发现错误createDefault不是未定义的MockProviderConfig类型

我该怎么做才能继续

我的POM文件如下所示: http://maven.apache.org/xsd/maven-4.0.0.xsd> 4.0.0 消费者协会0805 消费者_080517 0.0.1-快照 战争

在版本3.3.8中,MockProviderConfig类是groovy类,因此可以正常访问

在版本3.3.0之前,它既是Scala单例对象又是类,因此您需要根据从Java调用Scala类来适当地访问它

由于createDefault是在伴随的singleton对象上定义的,因此引用它的正确方法是:


MockProviderConfig$.MODULE$.createDefault

您可以发布出现错误的测试代码吗?您也可以尝试最新版本,即3.3.8。感谢您的快速响应,发布了测试代码。您好,将版本更新为3.3.8解决了错误!非常感谢
<dependencies>
    <dependency>
        <groupId>au.com.dius</groupId>
        <artifactId>pact-jvm-consumer-junit_2.11</artifactId>
        <version>3.2.9</version>
    </dependency>
</dependencies>
package DSLDirectConsumerTest;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import org.junit.Test;

import au.com.dius.pact.consumer.ConsumerPactBuilder;
import au.com.dius.pact.model.MockProviderConfig;
import au.com.dius.pact.model.MockProviderConfig$;
import au.com.dius.pact.model.PactConfig;
import au.com.dius.pact.model.PactFragment;
import au.com.dius.pact.model.RequestResponsePact;

public class DirectDSLConsumerPactTest {

    @Test
    public void testPact() {
        PactFragment pactFragment = ConsumerPactBuilder.consumer("Some Consumer").hasPactWith("Some Provider")
                .uponReceiving("a request to say Hello").path("/hello").method("POST").body("{\"name\": \"harry\"}")
                .willRespondWith().status(200).body("{\"hello\": \"harry\"}").toFragment();

        MockProviderConfig.createDefault();

    }

}