Pentaho

 View Only

 Jdk-13.0.1 and Jdk-13.0.2 not working for PDI 9

  • Pentaho
  • Kettle
  • Pentaho
  • Pentaho Data Integration PDI
Rob Burgess's profile image
Rob Burgess posted 02-11-2020 01:08

jdk-13.0.1 works for PDI 8.30 but I get the following error on Windows Server 2012 R2 when trying to open Spoon from the PDI 9 folder:

 

Error: Could not create Java Virtual Machine

 

The system variable JAVA_HOME = C:\Program Files\Java\jdk-13.0.1 and C:\Program Files\Java\jdk-13.0.1\bin has been added to the Path system variable.

 

I also tried Jdk-13.0.2 but get the same error.

 

How can I fix this so I can use PDI 9?


#Kettle
#PentahoDataIntegrationPDI
#Pentaho
Ana Gonzalez's profile image
Ana Gonzalez

It might have worked with JDK-13, but it was never certified to work, looking in the official documentation you see it was only certified for JDK-8: https://help.pentaho.com/Documentation/8.3/Setup/Components_Reference#GUID-9D210BF1-87C8-4170-ACD0-B9422F893CBB

The same happens with Pentaho 9: https://help.pentaho.com/Documentation/9.0/Setup/Components_Reference#Java_virtual_machine

So you'll need to install JDK 8 and point the PENTAHO_JAVA_HOME to that version.

Regards

Sebastian Lechner's profile image
Sebastian Lechner

According to this article https://support.pentaho.com/hc/en-us/articles/360016233851-Support-Statement-for-Pentaho-Software-Requirements-for-Java-Runtime-Environment-JRE- PDI 8.3 is compatible with Java 8. Compatibility with Java 11 is "On the Road Map".

Rob Burgess's profile image
Rob Burgess

Thanks Ana

 

Do you know where I can download Oracle OpenJDK 8?

Rob Burgess's profile image
Rob Burgess

Thanks Sebastian

Sebastian Lechner's profile image
Sebastian Lechner
Dan Keeley's profile image
Dan Keeley

there's no such thing as oracle openjdk. oracle provide their jvm, which is the old sun one. they changed the license so that now you cannot use 8 commercially without paying a fee. hence why everyone moved over to openjdk and away from oracle.

Sebastian Lechner's profile image
Sebastian Lechner

Everyone but Pentaho

Dan Keeley's profile image
Dan Keeley

eh? pentaho has moved away from oracle jvm. Since 8.3 they fully support openjdk.

Sebastian Lechner's profile image
Sebastian Lechner

I was not aware of that, thanks for the update.

Stephen Rich's profile image
Stephen Rich

I had to remove the following statement from spoon.bat to get kettle to open. line 127 "-Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS%" Maybe this will help someone.

Tony Bartolucci's profile image
Tony Bartolucci

I can confirm the same on mac - I had to comment out lines 237-241 in spoon.sh

 

# JAVA_ENDORSED_DIRS=""# if [ ! -z "$_PENTAHO_JAVA_HOME" ]; then# JAVA_ENDORSED_DIRS="${_PENTAHO_JAVA_HOME}/jre/lib/endorsed:${_PENTAHO_JAVA_HOME}/lib/endorsed:"# fi# JAVA_ENDORSED_DIRS="${JAVA_ENDORSED_DIRS}${BASEDIR}/system/karaf/lib/endorsed"

 

Laurent Platteau's profile image
Laurent Platteau

Indeed it's working when putting JAVA_ENDORSED_DIRS in comment.

Does anyone whats is this JAVA_ENDORSED_DIRS for?

Sebastian Lechner's profile image
Sebastian Lechner

I just tried to get spoon running on my local MacOS with Java 13.0.2. When you start spoon.sh via shell like

bash spoon.sh

then one gets loads of errors and warnings, although the GUI would start up in the end. Also the marketplace is missing in the menu. Not sure if I wanted to have it like this on a production server.

Sebastian Lechner's profile image
Sebastian Lechner

Those Warnings were related to plugins and libraries we are not using anyway so I removed them from the PDI directories according to the guide: https://blog.twineworks.com/improving-startup-time-of-pentaho-data-integration-78d0803c559b

 

After that, all the warnings and error messages disappeared but one:

 

WARNING: Illegal reflective access by org.pentaho.di.core.plugins.KettleURLClassLoader to field java.net.URLClassLoader.ucp

 

I'm going to ignore this and will continue to use PDI with Java 13.0.2.

Brandon Jackson's profile image
Brandon Jackson

If you need Java 8 on windows, the installer is at https://adoptopenjdk.net

This way you are not under the commercial Oracle license.

Troy Frericks's profile image
Troy Frericks

I also can confirm this worked on Windows.

 

Spoon.bat

==

REM **************************************************

REM ** Setup Karaf endorsed libraries directory    **

REM **************************************************

 

#set JAVA_ENDORSED_D...

#if not "%_PENTAHO_JAVA_HOME%"...

#set JAVA_ENDORSED_DIRS=%JAVA_ENDORSE...

==

 

Had to edit with 'wordpad' as the end of lines were funkey; 'notepad' did not work at all. Just added '#' to the beginning the three lines as above.

 

Troy.

#

 

Sebastian Lechner's profile image
Sebastian Lechner

HI Troy,

The correct way to comment out a line in a Windows .bat file is to write

 

REM

 

in the beginning of the line.