querydsl同时生成mongo和MySQL的q类插件怎么配?

pom配置插件单独用一个都没问题 两个都要用的话怎么同时识别entity和document注解呢


<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.apt.jpa.JPAAnnotationProcessor</processor>
                        </configuration>
                    </execution>
                </executions>
            </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.apt.morphia.MorphiaAnnotationProcessor</processor>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

插件咋不一样- - 我这这样配上去显示重复插件

Querydsl 是一个功能强大的 Java 框架,可以生成类型安全的查询语句,以支持不同数据存储技术。如果需要同时生成 Mongo 和 MySQL 的 Q 类,则需要使用两个不同的插件来实现。

在 pom.xml 中配置如下:


<build>
  <plugins>
    <!-- 生成 Mongo 的 Q 类 -->
    <plugin>
      <groupId>com.mysema.maven</groupId>
      <artifactId>maven-querydsl-mongodb-plugin</artifactId>
      <version>3.7.2</version>
      <executions>
        <execution>
          <goals>
            <goal>mongodb</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
<!-- 生成 MySQL 的 Q 类 -->
<plugin>
  <groupId>com.mysema.maven</groupId>
  <artifactId>maven-querydsl-jpa-plugin</artifactId>
  <version>3.7.2</version>
  <executions>
    <execution>
      <goals>
        <goal>jpa</goal>
      </goals>
    </execution>
  </executions>
</plugin>
</plugins>
</build>

两个插件都是通过识别实体注解来生成 Q 类的,而实体注解是不同的,Mongo 是使用 @Document,而 JPA 是使用 @Entity。因此,在实体类中需要同时使用两种注解,以确保同时生成 Mongo 和 MySQL 的 Q 类。

例如:

@Document
@Entity
public class MyEntity {
// 实体内容
}