Skip to content

Commit 34dba98

Browse files
authored
Merge pull request #2231 from AndreMiras/feature/bumps_to_openjdk13
⬆️ Bumps to OpenJDK 13
2 parents 9c601cf + e060e9a commit 34dba98

File tree

5 files changed

+23
-58
lines changed

5 files changed

+23
-58
lines changed

Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ ENV HOME_DIR="/home/${USER}"
4545
ENV WORK_DIR="${HOME_DIR}/app" \
4646
PATH="${HOME_DIR}/.local/bin:${PATH}" \
4747
ANDROID_HOME="${HOME_DIR}/.android" \
48-
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
48+
JAVA_HOME="/usr/lib/jvm/java-13-openjdk-amd64"
4949

5050

5151
# install system dependencies
@@ -69,7 +69,7 @@ RUN dpkg --add-architecture i386 \
6969
libssl-dev \
7070
libstdc++6:i386 \
7171
libtool \
72-
openjdk-8-jdk \
72+
openjdk-13-jdk \
7373
patch \
7474
pkg-config \
7575
python3 \
@@ -99,7 +99,7 @@ USER ${USER}
9999

100100
# Download and install android's NDK/SDK
101101
COPY ci/makefiles/android.mk /tmp/android.mk
102-
RUN make --file /tmp/android.mk target_os=linux \
102+
RUN make --file /tmp/android.mk \
103103
&& sudo rm /tmp/android.mk
104104

105105
# install python-for-android from current branch

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ all: virtualenv
2020

2121
$(VIRTUAL_ENV):
2222
python3 -m venv $(VIRTUAL_ENV)
23-
$(PIP) install Cython==0.29.19
23+
$(PIP) install Cython
2424
$(PIP) install -e .
2525

2626
virtualenv: $(VIRTUAL_ENV)

ci/makefiles/android.mk

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,28 @@
11
# Downloads and installs the Android SDK depending on supplied platform: darwin or linux
22

3-
# We must provide a platform (darwin or linux) and we need JAVA_HOME defined
4-
ifndef target_os
5-
$(error target_os is not set...aborted!)
6-
endif
7-
83
# Those android NDK/SDK variables can be override when running the file
94
ANDROID_NDK_VERSION ?= 19b
10-
ANDROID_SDK_TOOLS_VERSION ?= 4333796
11-
ANDROID_SDK_BUILD_TOOLS_VERSION ?= 28.0.2
5+
ANDROID_SDK_TOOLS_VERSION ?= 6514223
6+
ANDROID_SDK_BUILD_TOOLS_VERSION ?= 29.0.3
127
ANDROID_HOME ?= $(HOME)/.android
138
ANDROID_API_LEVEL ?= 27
149

10+
# per OS dictionary-like
11+
UNAME_S := $(shell uname -s)
12+
TARGET_OS_Linux = linux
13+
TARGET_OS_ALIAS_Linux = $(TARGET_OS_Linux)
14+
TARGET_OS_Darwin = darwin
15+
TARGET_OS_ALIAS_Darwin = mac
16+
TARGET_OS = $(TARGET_OS_$(UNAME_S))
17+
TARGET_OS_ALIAS = $(TARGET_OS_ALIAS_$(UNAME_S))
18+
1519
ANDROID_SDK_HOME=$(ANDROID_HOME)/android-sdk
16-
ANDROID_SDK_TOOLS_ARCHIVE=sdk-tools-$(target_os)-$(ANDROID_SDK_TOOLS_VERSION).zip
20+
ANDROID_SDK_TOOLS_ARCHIVE=commandlinetools-$(TARGET_OS_ALIAS)-$(ANDROID_SDK_TOOLS_VERSION)_latest.zip
1721
ANDROID_SDK_TOOLS_DL_URL=https://dl.google.com/android/repository/$(ANDROID_SDK_TOOLS_ARCHIVE)
1822

1923
ANDROID_NDK_HOME=$(ANDROID_HOME)/android-ndk
2024
ANDROID_NDK_FOLDER=$(ANDROID_HOME)/android-ndk-r$(ANDROID_NDK_VERSION)
21-
ANDROID_NDK_ARCHIVE=android-ndk-r$(ANDROID_NDK_VERSION)-$(target_os)-x86_64.zip
25+
ANDROID_NDK_ARCHIVE=android-ndk-r$(ANDROID_NDK_VERSION)-$(TARGET_OS)-x86_64.zip
2226
ANDROID_NDK_DL_URL=https://dl.google.com/android/repository/$(ANDROID_NDK_ARCHIVE)
2327

2428
$(info Target install OS is : $(target_os))
@@ -61,8 +65,8 @@ extract_android_ndk:
6165
# updates Android SDK, install Android API, Build Tools and accept licenses
6266
update_android_sdk:
6367
touch $(ANDROID_HOME)/repositories.cfg
64-
yes | $(ANDROID_SDK_HOME)/tools/bin/sdkmanager --licenses > /dev/null
65-
$(ANDROID_SDK_HOME)/tools/bin/sdkmanager "build-tools;$(ANDROID_SDK_BUILD_TOOLS_VERSION)" > /dev/null
66-
$(ANDROID_SDK_HOME)/tools/bin/sdkmanager "platforms;android-$(ANDROID_API_LEVEL)" > /dev/null
68+
yes | $(ANDROID_SDK_HOME)/tools/bin/sdkmanager --sdk_root=$(ANDROID_SDK_HOME) --licenses > /dev/null
69+
$(ANDROID_SDK_HOME)/tools/bin/sdkmanager --sdk_root=$(ANDROID_SDK_HOME) "build-tools;$(ANDROID_SDK_BUILD_TOOLS_VERSION)" > /dev/null
70+
$(ANDROID_SDK_HOME)/tools/bin/sdkmanager --sdk_root=$(ANDROID_SDK_HOME) "platforms;android-$(ANDROID_API_LEVEL)" > /dev/null
6771
# Set avdmanager permissions (executable)
6872
chmod +x $(ANDROID_SDK_HOME)/tools/bin/avdmanager

ci/makefiles/osx.mk

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@ all: install_java upgrade_cython install_android_ndk_sdk install_p4a
77

88
install_java:
99
brew tap adoptopenjdk/openjdk
10-
brew cask install adoptopenjdk8
10+
brew cask install adoptopenjdk13
1111
/usr/libexec/java_home -V
1212

1313
upgrade_cython:
14-
pip3 install --upgrade Cython==0.29.19
14+
pip3 install --upgrade Cython
1515

1616
install_android_ndk_sdk:
1717
mkdir -p $(ANDROID_HOME)
18-
make -f ci/makefiles/android.mk target_os=darwin JAVA_HOME=`/usr/libexec/java_home -v 1.8`
18+
make -f ci/makefiles/android.mk JAVA_HOME=`/usr/libexec/java_home -v 13`
1919

2020
install_p4a:
2121
# check python version and install p4a

doc/source/troubleshooting.rst

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -145,45 +145,6 @@ the build (e.g. if buildozer was previously used). Removing this
145145
directory should fix the problem, and is desirable anyway since you
146146
don't want it in the APK.
147147

148-
Errors related to Java version
149-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
150-
151-
The errors listed below are related to Java version mismatch, it should be
152-
fixed by installing Java 8.
153-
154-
- :code:`java.lang.UnsupportedClassVersionError: com/android/dx/command/Main`
155-
- :code:`java.lang.NoClassDefFoundError: sun/misc/BASE64Encoder`
156-
- :code:`java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema`
157-
158-
On Ubuntu fix it my making sure only the :code:`openjdk-8-jdk` package is installed::
159-
160-
apt remove --purge openjdk-*-jdk
161-
apt install openjdk-8-jdk
162-
163-
In the similar fashion for macOS you need to install the :code:`java8` package::
164-
165-
brew cask install java8
166-
export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
167-
168-
169-
Error: Cask 'java8' is unavailable: No Cask with this name exists
170-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
171-
172-
In order to install Java 8 on macOS you may need extra steps::
173-
174-
brew tap homebrew/cask-versions
175-
brew cask install homebrew/cask-versions/adoptopenjdk8
176-
export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
177-
178-
179-
JNI DETECTED ERROR IN APPLICATION: static jfieldID 0x0000000 not valid for class java.lang.Class<org.renpy.android.PythonActivity>
180-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
181-
182-
This error appears in the logcat log if you try to access
183-
``org.renpy.android.PythonActivity`` from within the new toolchain. To
184-
fix it, change your code to reference
185-
``org.kivy.android.PythonActivity`` instead.
186-
187148
Requested API target 19 is not available, install it with the SDK android tool
188149
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
189150

0 commit comments

Comments
 (0)