I have a following Docker file to build Android project:
FROM ubuntu:18.04
RUN apt-get update && \
apt-get install -y openjdk-11-jdk wget unzip git dos2unix && \
rm -rf /var/lib/apt/lists/*
ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
ENV ANDROID_SDK_ROOT=/opt/android-sdk-linux
# Download and install Android SDK tools
RUN cd /opt && \
wget -q https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip -O android-sdk.zip && \
unzip -q android-sdk.zip -d android-sdk-linux && \
rm android-sdk.zip
ENV PATH=${PATH}:${ANDROID_SDK_ROOT}/tools:${ANDROID_SDK_ROOT}/tools/bin:${ANDROID_SDK_ROOT}/platform-tools
# Accept Android licenses
RUN yes | sdkmanager --licenses
# Android build tools
RUN sdkmanager --update && \
sdkmanager "platform-tools" "platforms;android-28" "build-tools;28.0.3" "system-images;android-28;google_apis;x86_64"
# Android emulator
RUN echo "no" | avdmanager create avd -n test -k "system-images;android-28;google_apis;x86_64" --force
COPY . /app
# Convert gradle script to Unix-style line endings
RUN dos2unix /app/gradlew
# Build the project
WORKDIR /app
However it fails during build on:
=> ERROR [4/8] RUN yes | sdkmanager --licenses 0.5s
------
> [4/8] RUN yes | sdkmanager --licenses:
#6 0.509 Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
Previously I had Java 8, but I was required to Update it to Java 11 and started getting this error. What is the way to fix it?