I’ve just installed Processing on a Pinebook Pro (ARM64 processor; nice machine!) running Manjaro Preview 4. I’m getting a list of Java-related errors when I invoke Processing from the command line or GUI icon. For example:
Exception in thread "AWT-EventQueue-0" java.awt.HeadlessException
Java is not currently installed on the machine.
$ java -version
bash: java: command not found
The forums provide conflicting views about whether Processing comes with its own Java implementation and users are not required to install Java separately; the counter view is the reverse of this. I am left somewhat confused. Can anyone confirm which case is correct for Processing for ARM?
If I have to install Oracle Java JDK to get Processing to work, then does anyone have a step-by-step guide for a noob about how to do this? I have downloaded jdk-8u231-linux-arm64-vfp-hflt.tar.gz from the Oracle site but am unclear about the steps required to successfully install it for use with Processing.
Remember, I’m using Manjaro ARM so please don’t refer me to an Ubuntu PPA or tell me to use a Raspbian image.
I do hope I get Processing running on my Pinebook Pro.
for me is not clear what processing you installed,
( why you not detailed that ( link / file name … )
but sure, if it is a processing like i know it from Raspberry Pi
it comes with its own java, so…
when you try from terminal
$ java --version
you get a possibly installed java BUT not the one from processing.
that one is installed, but that does not matter for processing if it has its own???
so when i run processing i can ask it
__SYS INFO :
System : Linux 4.19.75-v7+
JAVA : /usr/local/lib/processing-3.5.3/java rev: 1.8.0_202
OPENGL : VENDOR Broadcom RENDERER VideoCore IV HW VERSION OpenGL ES 2.0 GLSL_VERSION: OpenGL ES GLSL ES 1.00
user.home : /home/pi
user.dir : /usr/local/lib/processing-3.5.3
user.name : pi
Thank you @kll for your detailed reply. I was clear in my first post that I was running processing under Manjaro Linux on a Pinebook Pro. It’s very similar a RPi installation.
Java appears to be installed, that is, I can see a directory tree similar to yours:
My system does not recognise that Java is installed …
$ java -version
bash: java: command not found
… so even though some Java files may have been installed as part of Processing, they are not being recognised by either my system or Processing itself.
I now face two possibilities:
How to configure Processing to use the Java files that are part of its own installation, or
-2- yes that looks like java ?aarch64?
but could not see the path where it is under…
-3- NO,
will never show the java inside a processing install ( unless you force it )
that is same on all systems :
you not need to install JAVA if the processing comes with java.
if other java install on the system also does not matter
BUT if processing has no internal java you must install java,
and the exact version needed by processing.
over all i can not help because i not know / have your system.
still i hope that general info helps as a start,
until some expert can tell you what to do,
or has more info if, for that hardware and OS, a processing build currently available.
Yes, that is exactly the version I have installed. It contains Java.
n
I extracted the .tgz file and then cd to the resulting processing-3.5.3 folder, then
sudo ./install.sh
This creates the desktop icon labelled Processing IDE. It all looks fine, but on execution I get the following errors:
[mb668@PBP processing-3.5.3]$ Exception in thread "AWT-EventQueue-0" java.awt.HeadlenssException
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204)
at java.awt.Window.<init>(Window.java:536)
at java.awt.Frame.<init>(Frame.java:420)
at java.awt.Frame.<init>(Frame.java:385)
at processing.app.Messages.showTrace(Messages.java:177)
at processing.app.Base$1.run(Base.java:119)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
I have taken all this to be Java-related, and hence my questions about whether or not Java is installed on my system (yes, apparently, via the installation of Processing itself).
If Java is installed, and configured correctly, then why are these Java errors being generated?
Yes, of course. I would not post to this forum without doing basic online research first.
The hardware is new (released only a few weeks ago) and there is no prior experience of anyone using Processing with it. Similarly, Manjaro ARM, especially on this hardware, is also very new.
I would be surprised given that you can find java version to install, yes there are zero vm might be available but performance will be slow (established jvms use assembly code).
Most probably, when I got my RaspberryPI4 I thought I would install a 64 bit ArchLinux distro, but it was a mistake, as only JVM available was the zero vm ones and performance was useless. Furthermore rest of distro was not optimized like RasbpberryPI buster, so even video driver was not too hot.
Thanks. That’s good to know (though kind of annoying too)
I’ve run Processing on a Pi 3B+ before and (wrongly) assumed that I could run it on a different ARM device without trouble. It might be a case of waiting for the software to catch up with the hardware.
I’m a bit out of my depth in asking this but wonder if it’s possible to configure Processing to use Oracle JDK rather than its built-in Java. Oracle has a Linux ARM64 version. Would this solve the architecture mismatch problem?
Based on @monkstone diagnosis a couple of comments back, it appears that there’s an architecture difference between your (32-bit) and my (64-bit) system. That explains the difference in tree structure.
Thanks for that. I’m currently running Manjaro ARM, based on Arch. I made a mess of an arch installation years ago and have not had the courage to return
As a 5+ year Debian user, I’m loving Manjaro … just wish I could run Processing on this new notebook.