Maven使用spring-data-jpa和querydsl构建问题

问题描述 投票:5回答:3

我有一个针对spring-data-jpa和QueryDsl的Eclipse Maven项目。

我似乎有一个maven-apt-plugin的问题,如果我做一个mvn clean然后安装mvn,它会尝试“处理”引用QueryDsl生成文件的文件,但是这些生成的文件尚未构建,所以我得到多个“找不到符号”的错误。

如果那时必须再做一次mvn安装,一切都很好,因为现在生成的文件存在。

这个maven-apt-plugin是否需要处理我项目中的每个文件,或者我可以给它一个指定的目录吗?

注意:我使用的是JDK6,Eclipse Indigo,M2E 1.0.100

我的POM是:

<project>
  ....
  <build>
    <plugins>
      <plugin>
        <groupId>com.mysema.maven</groupId>
        <artifactId>maven-apt-plugin</artifactId>
        <version>1.0.2</version>
        <executions>
          <execution>
            <phase>generate-sources</phase>
            <goals>
              <goal>process</goal>
            </goals>
            <configuration>
              <outputDirectory>target/generated-sources</outputDirectory>
              <processor>com.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  ....
</project>
java spring maven-2 spring-data querydsl
3个回答
4
投票

Alex,尝试定义build-helper:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>1.7</version>
    <executions>
        <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
                <goal>add-source</goal>
                <goal>add-test-source</goal>
            </goals>
            <configuration>
                <sources>
                    <source>target/generated-sources</source>
                    <source>src/main/java</source>
                </sources>
            </configuration>
        </execution>
    </executions>
</plugin>

1
投票

你有错误或只是警告吗?您可以添加true以减少错误记录。

这种日志记录是APT的一部分,因为在生成类型之前的第一次运行中,源检查会看到对不可用类型的引用。


1
投票

我也有很多“找不到符号”的日志记录(并且处理成功)。它似乎与以下问题有关。

https://github.com/mysema/maven-apt-plugin/issues/2

通过添加以下选项修复。

<logOnlyOnError>true</logOnlyOnError>
© www.soinside.com 2019 - 2024. All rights reserved.