Scilab Error: Need to install legacy Java SE 6 runtime

catalinainstalljava

Scilab v6.0.2 is downloaded from the official website and installed, but it cannot be opened with the error:

To open "this Java application" you need to install the legacy Java SE 6 runtime.

I follow instructions in "More info" and on the Internet to download Java from Apple, but Java cannot be installed because "A newer version of this package is already installed", shown below:

enter image description here

My MacOS is Catalina v.10.15.3.
How can I escape this loop?

Thanks for the help in advance.

Best Answer

I tried downloading Scilab and it runs fine on my Catalina, where I've done the steps below to get another Java application to run.

Download and install a recent version of the Oracle JDK, like Java SE 13 from https://www.oracle.com/java/technologies/javase-downloads.html#JDK13

Then open Terminal (it's in Applications/Utilities) and write

cd /Library/Java/JavaVirtualMachines/

and press Enter. This changes the working directory to where the Java Virtual Machines are installed. Then do

ls 

to get a list of the installed versions. Enter the Contents directory of the one you're using by writing something like

cd jdk-13.0.2.jdk/Contents/

Replace the version numbers if you have a different Java version installed.

Open Info.plist in any text editor (if you want to do that from Finder instead of Terminal, write open . to open the current folder) and search for these lines:

<key>JVMCapabilities</key>
 <array>
  <string>CommandLine</string>
 </array>

Replace those with these lines

<key>JVMCapabilities</key>
 <array>
  <string>JNI</string>
  <string>BundledApp</string>
  <string>WebStart</string>
  <string>Applets</string>
  <string>CommandLine</string>
 </array>

and save the file. Then try opening Scilab again.

Sources: https://crunchify.com/os-x-mavericks-eclipse-java-issue/ and https://www.awareim.com/forum/viewtopic.php?p=48828#p48828