On 09/15/18 16:32, Christoph Berg wrote:
> Fatal Error: Unable to find package java.lang in classpath or bootclasspath
> ...
> openjdk-10-jdk is installed. Any idea what is missing?
With Java 9, a completely new modular structure was brought to the JDK,
with deep implications for build procedures. I will have to rework the
build process heavily for a future PL/Java release, but for 1.5.1, I
have not.
So, it needs a Java 8 JDK (or 7, or 6, but let's just say 8) to build.
Once built, it will _run_ on later Java runtimes (and users can write
PL/Java functions using the latest language features, compile them with
later JDKs, and run them in PL/Java, as long as it is running on a new-
enough runtime).
The Java runtime that actually gets used, at runtime, is determined by
the pljava.libjvm_location variable, which can be given a default at
build time with -Dpljava.libjvmdefault=....
So if you are packaging for a platform where you know Java 10 will be
the default, and you know what the conventional path to its libjvm.so will
be, then by all means, use -Dpljava.libjvmdefault= to build in that
default for use at runtime. But the build, for now, must be done with 8.
There is a new(-ish?) page in the documentation with information intended
for packagers:
http://tada.github.io/pljava/build/package.html
-Chap