5

tôi sử dụng Lombok trên một số dự án, và với sự mới Android Studio 2.4 Update now (Preview) Tôi nhận được lỗi này lạ:Android Studio 2.4 + Lombok annotationProcessor nhầm lẫn cấu hình

What went wrong: Execution failed for task ':core:javaPreCompileRelease'. Annotation processors must be explicitly declared now. The following dependencies on the compile classpath are found to contain annotation processor. Please add them to the annotationProcessor configuration. - lombok-1.16.16.jar Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior. Note that this option is deprecated and will be removed in the future. See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details.

Tôi đã cố gắng:

annotationProcessor "org.projectlombok:lombok:1.16.16"

nhưng không có hiệu lực.

Tôi cũng đã thử nghiệm:

android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true

Nhưng cũng không có tác dụng.

Đồng thời kiểm tra trang hỗ trợ để biết thêm thông tin nhưng không may mắn, có ai trong số các bạn có thể không? https://developer.android.com/studio/preview/features/index.html?utm_source=android-studio#annotationProcessor_config

Trả lời

6

Cập nhật:

provided "org.projectlombok:lombok:1.16.16" // keep 
annotationProcessor "org.projectlombok:lombok:1.16.16" // add this 

Chỉ cần làm việc một cách hoàn hảo, nhưng tôi có hai mô-đun Android Studio, và hai build.gradle tập tin. Nhật ký lỗi chỉ thay đổi một chút (tiền tố mô-đun), và tôi nghĩ bản sửa lỗi không hoạt động.

Nhưng sau khi áp dụng sửa chữa cho cả hai build.gradle mọi thứ đều hoạt động hoàn hảo.

+0

Có cùng vấn đề. Tôi đã sử dụng Lombok trong một mô-đun lib Android và một mô-đun lib Java. Tôi chỉ phải cập nhật build.gradle trong mô-đun Android. Mô-đun Java có thể ở dạng 'compileOnly 'org.projectlombok: lombok: [PHIÊN BẢN CỦA BẠN]" ' – tir38

+1

Với Android Studio 3.0 canary 1 ngoài các hàng được cung cấp/chú thíchĐối với các hàngProcessor tôi cũng phải thêm ' javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } } ' bên trong ' android { defaultConfig { } } '. – DSoldo

+0

'annotationProcessor' phải là' kapt' – Diolor

0

tôi đã cùng một vấn đề nhưng cần một sửa chữa hơi khác nhau (mặc dù ý tưởng đến từ các câu trả lời được chấp nhận ở trên - https://stackoverflow.com/a/43820494/1777346)

Hóa ra tôi đã có các quy định và annotationProcessor trong cả hai tập tin build.gradle .. nhưng , Tôi cũng đã có một mục nhập biên dịch. Việc xóa tài khoản đã khắc phục sự cố này cho tôi:

compile 'org.projectlombok:lombok:1.16.16' // remove this 
provided 'org.projectlombok:lombok:1.16.16' 
annotationProcessor "org.projectlombok:lombok:1.16.16" 

Chỉ cần tôi thêm kết quả vào trường hợp nó giúp bất kỳ ai. Tôi đang sử dụng Android Studio 3.0 Canary 4 và gradle: 3.0.0-alpha4 trong nhiệm vụ bất tận của tôi để giảm thời gian xây dựng .. điều này dường như không bao giờ trả hết :)