2011-11-09 6 views
5

spring-data-jpa 및 QueryDsl 용 Eclipse Maven 프로젝트가 있습니다.spring-data-jpa 및 querydsl의 Maven 빌드 문제

mvn 설치 후 mvn clean을 수행하면 QueryDsl 생성 파일을 참조하는 파일을 "처리"하려고 시도하지만 생성 된 이러한 파일이없는 maven-apt-plugin에 문제가있는 것 같습니다. 아직 구축되어 여러 개의 "심볼을 찾을 수 없습니다"오류가 발생합니다.

다른 mvn 설치를해야한다면 생성 된 파일이 현재 존재하므로 모든 것이 정상입니다.

이 maven-apt-plugin은 내 프로젝트의 모든 파일을 처리해야합니까, 아니면 특정 디렉토리를 제공 할 수 있습니까?

참고 : 임 JDK6, 이클립스 인디고, 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> 
+0

이클립스없이 maven을 사용한다면 정확히 동일한 문제가 발생합니까? – Ralph

+0

안녕하세요 랄프, 아래 내 의견을 참조하십시오. 감사. – Alex

답변

4

알렉스, 빌드 도우미를 정의하려고 :

<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의 일부입니다.

+0

이클립스 콘솔 윈도우의 maven-apt-plugin : 1.0.2 : process 단계에서 기호를 찾을 수 없다는 내용의 빨간색 텍스트 출력 (로깅 아님)이 표시됩니다. 이것은 QDSL 생성 클래스를 참조하는 모든 클래스를위한 것입니다. – Alex

+0

mvn 설치의 일부로 실행되는 테스트는 해결되지 않은 컴파일러 오류에 대해 Spring이 실패 할 때 실패합니다. 나중에 mvn을 다시 설치하면 곧바로 모든 것이 완벽하게 작동합니다. – Alex

+0

위의 Ralph의 의견에 이어, mvn clean을 실행 한 다음 명령 행에서 mvn을 설치하면 maven-apt-plugin에서 symbol이 발견되지 않은 것과 같은 출력을 볼 수 있습니다. 그러나 테스트에 문제가없는 것은 아닙니다. 따라서이 문제는 Eclipse 내에서만 발생합니다. – Alex

1

내가 많은 로깅 "기호를 찾을 수 없습니다"가지고 (및 처리가 성공),도. 그것은 다음 문제와 관련이있는 것 같습니다.

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

다음과 같은 옵션을 추가하여 수정되었습니다.

<logOnlyOnError>true</logOnlyOnError>