Contrary to my expectations OpenJDK17 is available for arm32 (from adoptium.net). I installed it in the /opt folder on my RaspberryPI4 (RaspbianOS), and created symbolic links using the debian update-alternatives tool:-
sudo update-alternatives --install /usr/bin/java java /opt/jdk-17+35/bin/java 100
And set it to be default java:-
sudo update-alternatives --config java
However when I tried to run more than a basic PiCrate sketch it hung. Now it turns out there was an issue with the clever clogs at Raspbian setting
JAVA_HOME. For an immediate fix I just set
JAVA_HOME on the command line.
Then sketches ran as anticipated, you will not find this issue with
ManjaroARM since jdk-17 is installed by default.
sudo pacman -S jre-openjdk
Currently PiCrate works on jdk11 and jdk17, but I will be tempted to upgrade to jdk17 in the relatively near future. Since jdk14 there have been interesting developments in
Pattern match instanceof and
Switch expression that can be used by PiCrate. I investigated
JAVA_HOME issue a bit further and it turns out it gets set dynamically (see /etc/profile.d/jdk_home.sh) so its nothing worry about in practice as it gets updated when you re-login (it might be an issue for vanilla processing with its built in jdk?).