Java 正在尝试使用MongoDB设置Querydsl 3.6.0,但找不到MorphiaAnnotationProcessor
我有一个mongodb的小示例项目,无法让注释处理器工作。我使用的例子如下: 运行Java 正在尝试使用MongoDB设置Querydsl 3.6.0,但找不到MorphiaAnnotationProcessor,java,mongodb,maven,querydsl,Java,Mongodb,Maven,Querydsl,我有一个mongodb的小示例项目,无法让注释处理器工作。我使用的例子如下: 运行mvn clean install会产生: Annotation processor 'com.querydsl.mongodb.morphia.MorphiaAnnotationProcessor' not found 我到处找那个处理器。就是找不到。以下是pom.xml文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht
mvn clean install
会产生:
Annotation processor 'com.querydsl.mongodb.morphia.MorphiaAnnotationProcessor' not found
我到处找那个处理器。就是找不到。以下是pom.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.stevesando</groupId>
<artifactId>FindAll</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
<version>1.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>1.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-mongodb</artifactId>
<version>3.6.0</version>
</dependency>
<dependency>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<version>3.6.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>com.mysema.maven</groupId>
<artifactId>apt-maven-plugin</artifactId>
<version>1.1.3</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<outputDirectory>target/generated-sources/java</outputDirectory>
<processor>com.querydsl.mongodb.morphia.MorphiaAnnotationProcessor</processor>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
4.0.0
史蒂文森多
芬德尔
1.0-快照
org.springframework.boot
spring启动程序数据mongodb
1.2.1.发布
org.springframework.boot
弹簧起动试验
1.2.1.发布
com.mysema.querydsl
querydsl mongodb
3.6.0
com.mysema.querydsl
querydsl公寓
3.6.0
假如
org.slf4j
slf4j-log4j12
1.6.1
org.apache.maven.plugins
maven编译器插件
3.1
1.7
1.7
UTF-8
com.mysema.maven
aptmaven插件
1.1.3
过程
目标/生成的源代码/java
com.querydsl.mongodb.morphia.MorphiaAnnotationProcessor
正确的类名是
com.mysema.query.apt.morphia.MorphiaAnnotationProcessor
使用Spring数据,您应该使用org.springframework.Data.mongodb.repository.support.MongoAnnotationProcessor
SpringDataMongo提供了一个定制的APT处理器来生成
元模型而不是QueryDSL中提供的元模型,它将扫描
特定于Spring的@Document,而不是特定于Morphia的注释
谢谢FWIW我也需要org.mongodb.morphia,才能让注释正常工作。是的,在querydsl mongodb中,它只是一个可选的依赖项。