Spring Boot 1.5.13 - QueryDSL查询ClassNotFoundException?

时间:2018-05-24 04:46:28

标签: java spring spring-boot querydsl

我正在使用带有QueryDSL的Spring Boot 1.5.13,每当我向控制器发出调用时,我都会得到以下ClassNotFoundException

Caused by: java.lang.ClassNotFoundException: api.model.QAddress
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_121]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_121]
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_121]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_121]
    at org.springframework.boot.devtools.restart.classloader.RestartClassLoader.loadClass(RestartClassLoader.java:161) ~[spring-boot-devtools-1.5.13.RELEASE.jar:1.5.13.RELEASE]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_121]
    ... 211 common frames omitted

然而,当我检查生成的包时,类QAddress就在那里。我该如何解决这个问题?

以下是pom.xml的{​​{1}}:

QueryDSL

2 个答案:

答案 0 :(得分:0)

在构建或部署应用程序时,只需验证是否有针对任何特定jar的无效的loc头(错误签名)的警告(在您的情况下可能与jar相关的QAddress类) )。

如果它为任何jar显示此错误,则从.m2存储库中删除该文件夹并重建它,然后它将再次下载该jar并尝试重新启动您的应用程序。

答案 1 :(得分:0)

对于遇到同样麻烦的任何人,此问题都与NetBeans有关。当我开始使用Intellij IDEA时,问题已解决。