Cap LOCAL_JAVA_LANGUAGE_VERSION <= 1.8 for API versions <= 26.
The default LOCAL_JAVA_LANGUAGE_VERSION is normally 1.8, or 1.9
when EXPERIMENTAL_USE_OPENJDK9 is explicitly set to the
nondefault value of "true".
Since old Android API levels do not support later versions,
LOCAL_JAVA_LANGUAGE_VERSIONs is already capped at 1.7 for
APIs <= 23.
This CL further caps it at 1.8 for all released APIs (currently
<= 26) even when EXPERIMENTAL_USE_OPENJDK9=true.
This may need to be updated in future.
This CL only affects builds where EXPERIMENTAL_USE_OPENJDK9 is
set; it does not affect the default build.
Bug: 67454477
Test: Treehugger
Change-Id: I54ca72bdb09aeb4184d5bb3c51d881dcfc943839
diff --git a/core/java_common.mk b/core/java_common.mk
index 837983b..320c52f 100644
--- a/core/java_common.mk
+++ b/core/java_common.mk
@@ -22,7 +22,12 @@
ifneq ($(EXPERIMENTAL_USE_OPENJDK9),true)
LOCAL_JAVA_LANGUAGE_VERSION := 1.8
else
- LOCAL_JAVA_LANGUAGE_VERSION := 1.9
+ private_sdk_versions_without_any_java_19_support := 24 25 26
+ ifneq (,$(filter $(LOCAL_SDK_VERSION), $(private_sdk_versions_without_any_java_19_support)))
+ LOCAL_JAVA_LANGUAGE_VERSION := 1.8
+ else
+ LOCAL_JAVA_LANGUAGE_VERSION := 1.9
+ endif
endif
endif
endif