【发布时间】:2017-08-13 17:17:21
【问题描述】:
我通过测试的对象
@Data
public class UserRequest {
@JsonProperty("name")
private final String name;
@JsonProperty("surname")
private final String surname;
@JsonProperty("email")
private final String email;
@JsonProperty("iaAdmin")
private final boolean isAdmin;
}
比我测试过
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class UserControllerIT {
@LocalServerPort
private int port;
@Test
public void testIsCreatingNewUser() throws IOException{
given()
.when()
.body(new UserRequest("asd","sad","asd",false))//.body(TestGenerator.getUserRequest())
.port(port)
.post("/user/" + TestGenerator.randomUUID)
.then()
.statusCode(HttpStatus.SC_CREATED);
}
我遇到了错误:
java.util.ServiceConfigurationError: com.fasterxml.jackson.databind.Module: Provider com.fasterxml.jackson.module.kotlin.KotlinModule could not be instantiated
在栈底
Caused by: java.lang.ClassNotFoundException: kotlin.jvm.internal.DefaultConstructorMarker
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 79 more
这是怎么回事?! Kotlin...我使用 java 和 spring boot v2.0 m3
【问题讨论】:
-
您使用的是什么 IDE?有时下载的依赖项会出现错误(下载不完整、文件损坏......等)尝试删除 .m2/com/fasterxml/jackson/module/kotlin 文件夹并尝试刷新项目以再次下载所有依赖项。
-
您的环境的一部分似乎使用了 kotlin,这是一种可以放在 JVM 之上以扩展语言的语言。例如,您有 Android Studio 吗?您可能可以追踪到您正在使用的组件依赖于 Kotlin。
-
Intellij IDEA 2017.2,我有好久没用的android studio bur。我会尝试删除 .m2
-
删除.m2并再次下载源不起作用,可能是spring boot v2故障
-
好的。应该包含它,但尝试将 kotlin 依赖项添加到 pom.xml:
org.jetbrains.kotlin kotlin-stdlib 1.1.3-2 依赖>
标签: java rest-assured