Fix annotation processors working w/ generated code on OpenJDK 9 toolchain

Generated code is annotated with @javax.annotation.Generated.
Annotation processors working with such code break on OpenJDK 9
toolchains because that class lives in the module
"java.xml.ws.annotation".

This CL makes that module available by adding the javac command
line flag
      -J--add-modules=java.xml.ws.annotation to javac
When the environment variable EXPERIMENTAL_USE_OPENJDK9 is set
to true.

Test: make ANDROID_COMPILE_WITH_JACK=false checkbuild tests \
      && make checkbuild tests
      (with OpenJDK 8u45 toolchain on the PATH)
Test: make EXPERIMENTAL_USE_OPENJDK9=true \
      ANDROID_COMPILE_WITH_JACK=false checkbuild
      (with jdk 9-ea+170 toolchain on the PATH)

Bug: 62050818

Change-Id: Ifd38cf4e301fbfac1380b6f1462a0a018b25a6a7
diff --git a/Android.mk b/Android.mk
index 8c5c5ee..baef6e0 100644
--- a/Android.mk
+++ b/Android.mk
@@ -24,6 +24,8 @@
 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 LOCAL_SRC_FILES := $(call all-java-files-under, caliper/src/main/java/)
 LOCAL_JAVA_RESOURCE_DIRS := caliper/src/main/resources
+# Required for use of javax.annotation.Generated per http://b/62050818
+LOCAL_JAVACFLAGS := $(if $(EXPERIMENTAL_USE_OPENJDK9),-J--add-modules=java.xml.ws.annotation)
 LOCAL_IS_HOST_MODULE := true
 
 LOCAL_STATIC_JAVA_LIBRARIES := \
@@ -78,6 +80,8 @@
 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 LOCAL_SRC_FILES := $(call all-java-files-under, caliper/src/test/java/)
 LOCAL_JAVA_RESOURCE_DIRS := caliper/src/test/resources
+# Required for use of javax.annotation.Generated per http://b/62050818
+LOCAL_JAVACFLAGS := $(if $(EXPERIMENTAL_USE_OPENJDK9),-J--add-modules=java.xml.ws.annotation,)
 LOCAL_IS_HOST_MODULE := true
 
 LOCAL_STATIC_JAVA_LIBRARIES := \