ComplexDataReader Java Issue

When running the ComplexDataReader on the server, I receive the following error…

CTL code compilation finished with 1 errors.
Error: Loading of compiled Java class failed! [Used Java Platform doesn’t provide any java compiler! .]

I’m using Designer on a Mac using JRE 1.7 (also tried 1.8) and CloverETL Server 4.3.0.15/15 has the following…

java.runtime.name:
Java™ SE Runtime Environment
java.runtime.version:
1.7.0_72-b14
java.specification.name:
Java Platform API Specification
java.specification.vendor:
Oracle Corporation
java.specification.version:
1.7

It appears I’m running the same versions of Java, so I’m at a loss

Thanks,
Andrew

Hi,

Try to use JDK instead of JRE, please. The JRE is useful only for running Java applications. It doesn’t contain the compiler. That’s why we recommend to use JDK.

For more information about the difference between JDK and JRE, click here, please.

Regards,

So use the JDK on my Mac and the Server? How do I ensure that Clover uses this new JDK installation?

Hi,

There are several possibilities how to solve this task.

In Designer:
The Clover Designer uses the bundled JDK by default. If you would like the Designer to use any other one, you can download the Oracle JDK for Mac here.
This Java instance is installed to /Library/Java by default.
Please note, that there is two-step configuration necessary in this case.
1. Add new JDK in Preferences/Java/Installed JREs. Check the documentation.
2. Set the Preferences/CloverETL/ETL Runtime/Java Runtime Environment (JRE) to Alternate JRE and choose the new one. Check the documentation.

In Clover Server:
The path to the JDK for the Clover Server is configured in the „[tomcat]/bin/setenv.sh“ file for Unix-like systems or the „[tomcat]/bin/setenv.bat“ for Windows system. Check the documentation.

If you run the Server on the same machine as the Designer, you can set the path to the JDK used by the Designer. If not, copy or download the same JDK and save it in a place where the Clover Server will be able to use it, please.

I hope this helps.
Regards,

I’m still having trouble getting this to work. I looked at the documentation and tried the echo command for JAVA_HOME and JRE_HOME on the server and they don’t return anything. Is it possible to not have java_home configured and Clover Server still works, or is that just required to use components like ComplexDataReader?

Andrew

Hi dflkid,

Our sales team will look to contact you directly and go over next steps to be able to resolve your issue.

Thank You,

Well, if you set JAVA_HOME to setenv.sh file and echo $JAVA_HOME, you will not see any output since whenever startup.sh is executed, it starts in a new terminal session.

If you’d like to add it globally, at least on a Linux machine, you’d need to add it into /etc/profile.d directory or /etc/profile file. Not sure how it works on Mac though. Important thing to keep in mind, after doing that, it is necessary to open a new terminal session in order to get change applied.