2015-05-01 29 views
26

Tôi có một dự án dựa trên Gradle sử dụng lombok. Tôi đã nhập dự án này vào IntelliJ IDEA 14.1 (sử dụng phương thức nhập Nhập bên ngoài mô hình). Tôi có thể chạy các bài kiểm tra đơn vị JUnit4 mà không gặp vấn đề gì ở Gradle, nhưng IntelliJ dường như có vấn đề khi nhìn thấy Getters Lombok được tạo ra. Điều này đang ngăn tôi chạy thử nghiệm trong IDEA.IntelliJ IDEA không thể thấy mã Lombok được tạo ra

Để đảm bảo không phải vấn đề được thiết lập, tôi đã tạo một Very simple project và xác nhận rằng cùng một sự cố xảy ra trong dự án thử nghiệm đơn giản.

phiên bản của tôi: Gradle: gradle-2.3-tất cả qua Gradle bao bọc
Intellij IDEA: IU-141,713
Lombok Plugin: 0.9.2

tôi thiếu gì ở đây?

Cập nhật Bởi không thể thấy Tôi không có nghĩa là vô hình về mặt vật lý. Ý tôi là:

/home/meeee/workspace/junit-lombok-idea/lib/src/main/java/com/example/jumbokea/Main.java 
Error:(10, 11) java: cannot find symbol 
    symbol: method setIntField(int) 
    location: variable sc of type com.example.jumbokea.SomeClass 
Error:(12, 41) java: cannot find symbol 
    symbol: method getIntField() 
    location: variable sc of type com.example.jumbokea.SomeClass 
Error:(14, 33) java: constructor AnotherClass in class com.example.jumbokea.AnotherClass cannot be applied to given types; 
    required: no arguments 
    found: float,com.example.jumbokea.SomeClass 
    reason: actual and formal argument lists differ in length 
Error:(16, 46) java: cannot find symbol 
    symbol: method getSomeFloat() 
    location: variable ac of type com.example.jumbokea.AnotherClass 
Error:(17, 43) java: cannot find symbol 
    symbol: method getSomeClass() 
    location: variable ac of type com.example.jumbokea.AnotherClass 

Các lớp bị biên dịch hiển thị getters và setters, nhưng tôi gặp phải các lỗi này khi IntelliJ chạy thử nghiệm 'ứng dụng' hoặc bài kiểm tra Đơn vị.

Getters and setters are there, but not there???

Trả lời

39

Bạn cần bật bộ tiền xử lý chú thích. See documentation here.

Ngoài ra bạn nên cài đặt plugin Lombok nếu không được thực hiện đã

+0

Tôi đã bật chế độ chú thích, nhưng bằng cách nào đó nó đã bị tắt. Tất cả mọi thứ đã làm việc tốt cho đến khoảng 4 giờ chiều của tôi ngày hôm qua sau đó tất cả của một bất ngờ nó bắt đầu hiển thị các lỗi này. Xử lý chú thích bị vô hiệu hóa bằng cách nào đó. – copolii

+2

Đừng quên khởi động lại IntelliJ sau khi bật bộ tiền xử lý chú thích. Đó là vấn đề của tôi –

2

Có thể thấy trong thư mục xây dựng.

enter image description here

5

tôi quản lý để giải quyết vấn đề này bằng cách làm như sau:

  • Cài đặt plugin Lombok
  • Enable Processing Chú see documentation
  • Cài đặt Maven mới nhất trên hệ thống của bạn và định cấu hình IntelliJ để sử dụng nó (trái với gói đi kèm) see documentation
+3

Đã có câu trả lời chính xác và được chấp nhận. Maven không liên quan ở đây. Tôi chưa bao giờ có nó và không bao giờ cần nó. – copolii

+2

Tất cả các giải pháp khác không hiệu quả với tôi vì vậy tôi nghĩ tôi sẽ chia sẻ một giải pháp –

0

Trong trường hợp của Lombok, IntelliJ cho phép bạn tìm kiếm tập quán của biến số, cũng sẽ bao gồm getters và setters. Chỉ cần nhấp vào tên biến và option/alt + f7.

Tính năng này hoạt động trong plugin Intellij 2016 và Lombok 0.13.16. Tôi không chắc chắn về các phiên bản cũ hơn.

Các vấn đề liên quan