2011-11-09 34 views
5

Tôi đã có một dự án Eclipse Maven cho spring-data-jpa và QueryDsl.Maven xây dựng các vấn đề với spring-data-jpa và querydsl

Tôi dường như có vấn đề với maven-apt-plugin, nếu tôi làm sạch mvn theo sau là cài đặt mvn, nó cố gắng "xử lý" các tệp tham chiếu tệp QueryDsl đã tạo, nhưng các tệp được tạo này không chưa được xây dựng nên tôi nhận được nhiều lỗi "không thể tìm thấy biểu tượng".

Nếu sau đó phải thực hiện một cài đặt mvn khác, mọi thứ đều ổn khi các tệp đã tạo hiện tồn tại.

Trình cắm maven-apt này có cần xử lý mọi tệp trong dự án của tôi hay tôi có thể cung cấp cho nó một thư mục được chỉ định không?

Lưu ý: Im sử dụng JDK6, Eclipse Indigo, M2E 1.0.100

POM của tôi là ...

<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

Bạn có gặp vấn đề tương tự nếu bạn sử dụng maven mà không có nhật thực? – Ralph

+0

Hi Ralph, xem bình luận của tôi dưới đây. Cảm ơn. – Alex

Trả lời

4

Alex, hãy cố gắng xác định xây dựng-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

Bạn có nhận lỗi hay chỉ là cảnh báo? Bạn có thể thêm đúng để giảm lỗi ghi nhật ký.

Loại ghi nhật ký này là một phần của APT, vì trong lần chạy đầu tiên trước khi các kiểu được tạo, kiểm tra nguồn sẽ xem các tham chiếu đến các loại không có sẵn.

+0

Trong cửa sổ Bảng điều khiển Eclipse, tại maven-apt-plugin: 1.0.2: giai đoạn xử lý tôi nhận được một số đầu ra văn bản màu đỏ (không ghi nhật ký) nói rằng các ký hiệu không tìm thấy. Điều này dành cho bất kỳ lớp nào tham chiếu đến các lớp được tạo ra QDSL. – Alex

+0

Các thử nghiệm chạy như một phần của bản cài đặt mvn sau đó thất bại vì Spring không thành công cho các lỗi trình biên dịch chưa được giải quyết. Nếu tôi làm lại bản cài đặt mvn ngay sau đó thì mọi thứ sẽ hoạt động hoàn hảo. – Alex

+0

Theo dõi từ bình luận của Ralph ở trên, nếu tôi chạy mvn clean, và sau đó mvn install từ dòng lệnh, tôi thấy cùng một đầu ra từ maven-apt-plugin liên quan đến các ký hiệu không tìm thấy, tuy nhiên tôi không gặp vấn đề gì với các kiểm tra thất bại. Vì vậy, vấn đề này chỉ có kinh nghiệm trong Eclipse – Alex

1

tôi có nhiều "không thể tìm thấy biểu tượng" đăng nhập (và xử lý thành công), quá. Dường như có liên quan với vấn đề sau.

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

Cố định bằng cách thêm các tùy chọn sau.

<logOnlyOnError>true</logOnlyOnError> 
Các vấn đề liên quan