From 50c58e48adabf15a038a499459bae94a7e7f1744 Mon Sep 17 00:00:00 2001 From: Pete Gillin Date: Tue, 13 Aug 2019 13:52:33 +0100 Subject: [PATCH] Pin staledataclass-annotation-processor to Java language level 8. This target tries to use --add-modules and --add-exports to get access to internal classes from the jdk.compiler module. This works for Java code (unsupportedappusage-annotation-processor) but not for Kotlin code, as here. The kotlinc invocation fails. As a workaround for this issue, this change pins this to Java language level 8, so the JPMS doesn't apply. Test: EXPERIMENTAL_JAVA_LANGUAGE_LEVEL_9=true make staledataclass-annotation-processor Bug: 139342589 Change-Id: I5234bd3daf5f5347547ead50445ba989b38cbf6e --- tools/processors/staledataclass/Android.bp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/processors/staledataclass/Android.bp b/tools/processors/staledataclass/Android.bp index c81d410c5e4b5..58a7d346ce1f1 100644 --- a/tools/processors/staledataclass/Android.bp +++ b/tools/processors/staledataclass/Android.bp @@ -13,6 +13,8 @@ java_plugin { static_libs: [ "codegen-version-info", ], + // The --add-modules/exports flags below don't work for kotlinc yet, so pin this module to Java language level 8 (see b/139342589): + java_version: "1.8", openjdk9: { javacflags: [ "--add-modules=jdk.compiler",