【发布时间】:2019-06-25 21:59:48
【问题描述】:
我是一名 Spring Boot 后端开发人员,他正试图轻松进入 Vaadin。我创建了一个简单的Spring Boot & Vaadin project 并将其上传到 GitHub。据我所知,我可能在 Vaadin Spring Boot Starter 库中发现了一个错误。在那个 GitHub 示例中,我很确定我已经引入了正确依赖项的正确版本,以启动并运行一个简单的入门应用程序,但是在应用程序启动时我得到了这个:
java.lang.reflect.MalformedParameterizedTypeException: null
at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.validateConstructorArguments(ParameterizedTypeImpl.java:58)
at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.<init>(ParameterizedTypeImpl.java:51)
at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.make(ParameterizedTypeImpl.java:92)
at sun.reflect.generics.factory.CoreReflectionFactory.makeParameterizedType(CoreReflectionFactory.java:105)
at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Reifier.java:140)
at sun.reflect.generics.tree.ClassTypeSignature.accept(ClassTypeSignature.java:49)
at sun.reflect.generics.repository.MethodRepository.getReturnType(MethodRepository.java:68)
at java.lang.reflect.Method.getGenericReturnType(Method.java:255)
at org.springframework.core.MethodParameter.getGenericParameterType(MethodParameter.java:382)
at org.springframework.core.SerializableTypeWrapper$MethodParameterTypeProvider.getType(SerializableTypeWrapper.java:337)
at org.springframework.core.SerializableTypeWrapper.forTypeProvider(SerializableTypeWrapper.java:149)
at org.springframework.core.ResolvableType.forType(ResolvableType.java:1346)
at org.springframework.core.ResolvableType.forMethodParameter(ResolvableType.java:1249)
at org.springframework.core.ResolvableType.forMethodParameter(ResolvableType.java:1217)
at org.springframework.core.ResolvableType.forMethodReturnType(ResolvableType.java:1160)
可以通过转到该 GitHub 项目、克隆它并运行命令来打包和运行它来找到完整的堆栈跟踪。
这里需要注意的是,尽管在完整的堆栈跟踪中似乎没有显示特定于 Vaadin 的类,但如果您在构建文件中注释掉 com.vaadin:vaadin-spring-boot-starter:13.0.8 依赖项,然后在EmployeeEditor 和 MainView 类(以便它再次编译),问题就消失了,应用程序启动得很好!
因此,核心 Spring Boot 框架不喜欢 Vaadin Spring Boot Starter 中的某些内容。 有什么想法吗?
【问题讨论】:
标签: spring-boot vaadin