Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
querydsl在src/main/java中生成Q类_Java_Spring_Maven_Querydsl - Fatal编程技术网

querydsl在src/main/java中生成Q类

querydsl在src/main/java中生成Q类,java,spring,maven,querydsl,Java,Spring,Maven,Querydsl,我在spring项目中使用querydsl,希望在src/main/java/xxx/xxx/model/此处生成Q类。当我在pom.xml中编写src/main/java之外的代码时,它会工作。但是,当我编写src/main/java时,它将无法工作。(不会生成q类。)您知道为什么吗?在src/main/java中,我编写了另一个类。在现有位置生成Q类是不可能的吗 这是我的pom.xml <plugin> <groupId>com.mysema.maven<

我在spring项目中使用querydsl,希望在src/main/java/xxx/xxx/model/此处生成Q类。当我在pom.xml中编写src/main/java之外的代码时,它会工作。但是,当我编写src/main/java时,它将无法工作。(不会生成q类。)您知道为什么吗?在src/main/java中,我编写了另一个类。在现有位置生成Q类是不可能的吗

这是我的pom.xml

<plugin>
    <groupId>com.mysema.maven</groupId>
    <artifactId>apt-maven-plugin</artifactId>
    <version>1.1.3</version>
    <executions>
        <execution>
            <phase>generate-sources</phase>
            <goals>
                <goal>process</goal>
            </goals>
            <configuration>
                <outputDirectory>src/main/java</outputDirectory>
                <processor>
                    com.querydsl.apt.jpa.JPAAnnotationProcessor
                </processor>
            </configuration>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>com.querydsl</groupId>
            <artifactId>querydsl-apt</artifactId>
            <version>${querydsl.version}</version>
        </dependency>
    </dependencies>
</plugin>

com.mysema.maven
aptmaven插件
1.1.3
生成源
过程
src/main/java
com.querydsl.apt.jpa.JPAAnnotationProcessor
com.querydsl
querydsl公寓
${querydsl.version}

您应该像这样在目标中添加目录路径:


目标/生成的源代码/java

首先,为什么要在源代码文件夹中生成它们。这样做会使实际的代码库复杂化。它们是自动生成的文件。 它们应该如下所示

<configuration>
    <outputDirectory>target/generated-sources/querydsl</outputDirectory>
    <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
</configuration>

目标/生成源/querydsl
com.querydsl.apt.jpa.JPAAnnotationProcessor
但如果您仍然需要将它们放在src文件夹中,请执行以下步骤

  • 禁用项目›自动生成
  • 运行Maven目标“生成源代码”,该目标运行apt Maven插件
  • 在Eclipse中刷新项目,生成的源文件将按预期显示
  • 项目›建设项目
  • 将创建包含生成的源的文件夹

    您可以查看项目的类路径设置。现在,您可以在任何需要的地方使用所有Q类


    那么如何在目标目录中使用Q类呢?我必须配置类路径吗?