将QueryDSL与MongoDB一起使用-java.lang.NoClassDefFoundError

将QueryDSL与MongoDB一起使用-java.lang.NoClassDefFoundError,java,maven,spring-data,querydsl,Java,Maven,Spring Data,Querydsl,我正在尝试将QueryDSL与MongoDB(由Spring数据提供)集成,我也在使用JPA存储库,所以我在模型模块和存储库模块中分离了包。Spring数据相关性来自Spring Data Realease列车版本Hopper-SR1。查询DSL版本3.7.2 <!-- Spring Data --> <dependency> <groupId>org.springframework.data</g

我正在尝试将QueryDSL与MongoDB(由Spring数据提供)集成,我也在使用JPA存储库,所以我在模型模块和存储库模块中分离了包。Spring数据相关性来自Spring Data Realease列车版本
Hopper-SR1
。查询DSL版本
3.7.2

        <!-- Spring Data -->
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-mongodb</artifactId>
        </dependency>

        <!-- Query DSL-->
        <dependency>
            <groupId>com.mysema.querydsl</groupId>
            <artifactId>querydsl-apt</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.mysema.querydsl</groupId>
            <artifactId>querydsl-mongodb</artifactId>
        </dependency>
        <dependency>
            <groupId>com.mysema.querydsl</groupId>
            <artifactId>querydsl-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>com.mysema.querydsl</groupId>
            <artifactId>querydsl-core</artifactId>
        </dependency>
可以肯定的是,我在我的父母
pom.xml

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>${spring.version}</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>

        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-releasetrain</artifactId>
            <version>${spring-data-bom.version}</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>
      </dependencies>
</dependencyManagement>

org.springframework
spring框架bom表
${spring.version}
进口
聚甲醛
org.springframework.data
弹簧数据释放装置
${spring数据bom.version}
进口
聚甲醛

我认为问题在于最新版本的
spring data mongodb
。我也遇到了同样的问题,但通过
1.8.4-RELEASE
版本解决了它。

如和中所示,Spring Data Hopper升级到Querydsl 4。因此,您还需要将应用程序升级到它。

querydsl
maven groupId替换为com.querydsl,并使用大于4.0.0的版本。

我对querydsl/Spring Boot 2.1.3有同样的问题

简单更改:从:

<dependency>
    <groupId>com.mysema.querydsl</groupId>
    <artifactId>querydsl-mongodb</artifactId>
    <version>3.6.6</version>
</dependency>
<dependency>
    <groupId>com.mysema.querydsl</groupId>
    <artifactId>querydsl-apt</artifactId>
    <version>3.6.6</version>
</dependency>

com.mysema.querydsl
querydsl mongodb
3.6.6
com.mysema.querydsl
querydsl公寓
3.6.6
致:


com.querydsl
querydsl mongodb
4.2.1
com.querydsl
querydsl公寓
4.2.1
以及相关的进口产品,它起了作用

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>${spring.version}</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>

        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-releasetrain</artifactId>
            <version>${spring-data-bom.version}</version>
            <scope>import</scope>
            <type>pom</type>
        </dependency>
      </dependencies>
</dependencyManagement>
<dependency>
    <groupId>com.mysema.querydsl</groupId>
    <artifactId>querydsl-mongodb</artifactId>
    <version>3.6.6</version>
</dependency>
<dependency>
    <groupId>com.mysema.querydsl</groupId>
    <artifactId>querydsl-apt</artifactId>
    <version>3.6.6</version>
</dependency>
<dependency>
    <groupId>com.querydsl</groupId>
    <artifactId>querydsl-mongodb</artifactId>
    <version>4.2.1</version>
</dependency>
<dependency>
    <groupId>com.querydsl</groupId>
    <artifactId>querydsl-apt</artifactId>
    <version>4.2.1</version>
</dependency>