Open
Description
When I start the Arduino IDE I get the following errors:
Exception in thread "Thread-14" java.lang.ExceptionInInitializerError
at javax.crypto.Cipher.getInstance(Cipher.java:518)
at sun.security.ssl.JsseJce.getCipher(JsseJce.java:189)
at sun.security.ssl.SSLCipher.isTransformationAvailable(SSLCipher.java:483)
at sun.security.ssl.SSLCipher.<init>(SSLCipher.java:472)
at sun.security.ssl.SSLCipher.<clinit>(SSLCipher.java:81)
at sun.security.ssl.CipherSuite.<clinit>(CipherSuite.java:67)
at sun.security.ssl.SSLContextImpl.getApplicableSupportedCipherSuites(SSLContextImpl.java:345)
at sun.security.ssl.SSLContextImpl.access$100(SSLContextImpl.java:46)
at sun.security.ssl.SSLContextImpl$AbstractTLSContext.<clinit>(SSLContextImpl.java:577)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at java.security.Provider$Service.getImplClass(Provider.java:1701)
at java.security.Provider$Service.newInstance(Provider.java:1659)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:236)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:164)
at javax.net.ssl.SSLContext.getInstance(SSLContext.java:156)
at javax.net.ssl.SSLContext.getDefault(SSLContext.java:96)
at javax.net.ssl.SSLSocketFactory.getDefault(SSLSocketFactory.java:122)
at javax.net.ssl.HttpsURLConnection.getDefaultSSLSocketFactory(HttpsURLConnection.java:332)
at javax.net.ssl.HttpsURLConnection.<init>(HttpsURLConnection.java:289)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.<init>(HttpsURLConnectionImpl.java:99)
at sun.net.www.protocol.https.Handler.openConnection(Handler.java:62)
at sun.net.www.protocol.https.Handler.openConnection(Handler.java:57)
at java.net.URL.openConnection(URL.java:1001)
at java.net.URL.openStream(URL.java:1067)
at processing.app.UpdateCheck.readInt(UpdateCheck.java:134)
at processing.app.UpdateCheck.run(UpdateCheck.java:90)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.SecurityException: Can not initialize cryptographic mechanism
at javax.crypto.JceSecurity.<clinit>(JceSecurity.java:93)
... 28 more
Caused by: java.lang.SecurityException: The jurisdiction policy files are not signed by the expected signer! (Policy files are specific per major JDK release.Ensure the correct version is installed.)
at javax.crypto.JarVerifier.verifyPolicySigned(JarVerifier.java:336)
at javax.crypto.JceSecurity.loadPolicies(JceSecurity.java:378)
at javax.crypto.JceSecurity.setupJurisdictionPolicies(JceSecurity.java:323)
at javax.crypto.JceSecurity.access$000(JceSecurity.java:50)
at javax.crypto.JceSecurity$1.run(JceSecurity.java:85)
at java.security.AccessController.doPrivileged(Native Method)
at javax.crypto.JceSecurity.<clinit>(JceSecurity.java:82)
... 28 more
Exception in thread "Timer-0" java.lang.NoClassDefFoundError: Could not initialize class sun.security.ssl.SSLContextImpl$DefaultSSLContext
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at java.security.Provider$Service.getImplClass(Provider.java:1701)
at java.security.Provider$Service.newInstance(Provider.java:1659)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:236)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:164)
at javax.net.ssl.SSLContext.getInstance(SSLContext.java:156)
at javax.net.ssl.SSLContext.getDefault(SSLContext.java:96)
at javax.net.ssl.SSLSocketFactory.getDefault(SSLSocketFactory.java:122)
at javax.net.ssl.HttpsURLConnection.getDefaultSSLSocketFactory(HttpsURLConnection.java:332)
at javax.net.ssl.HttpsURLConnection.<init>(HttpsURLConnection.java:289)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.<init>(HttpsURLConnectionImpl.java:99)
at sun.net.www.protocol.https.Handler.openConnection(Handler.java:62)
at java.net.URL.openConnection(URL.java:1050)
at cc.arduino.utils.network.HttpConnectionManager.makeConnection(HttpConnectionManager.java:130)
at cc.arduino.utils.network.HttpConnectionManager.makeConnection(HttpConnectionManager.java:106)
at cc.arduino.utils.network.FileDownloaderCache.updateCacheInfo(FileDownloaderCache.java:184)
at cc.arduino.utils.network.FileDownloaderCache.getFileCached(FileDownloaderCache.java:153)
at cc.arduino.utils.network.FileDownloader.downloadFile(FileDownloader.java:167)
at cc.arduino.utils.network.FileDownloader.download(FileDownloader.java:129)
at cc.arduino.contributions.DownloadableContributionsDownloader.download(DownloadableContributionsDownloader.java:147)
at cc.arduino.contributions.DownloadableContributionsDownloader.downloadIndexAndSignature(DownloadableContributionsDownloader.java:165)
at cc.arduino.contributions.packages.ContributionInstaller.updateIndex(ContributionInstaller.java:306)
at cc.arduino.contributions.ContributionsSelfCheck.updateContributionIndex(ContributionsSelfCheck.java:215)
at cc.arduino.contributions.ContributionsSelfCheck.run(ContributionsSelfCheck.java:75)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Os: MacOS 10.13.6
java -version
(installed via homebrew):
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)
Activity
autoantwort commentedon Aug 23, 2020
And when I try to install a board I get the following error:
facchinm commentedon Aug 24, 2020
Hi @autoantwort ,
we bundle our own JDK in the IDE so the one installed locally shouldn't hurt in any way.
Did this start all in a sudden or after an update of a mayor component (like the operating system) ?
autoantwort commentedon Aug 24, 2020
I only updated the Arduino IDE from 1.8.12 to 1.8.13. Version 1.8.12 is still working.
mepster commentedon Sep 2, 2020
I'm getting a similar error when I start 1.8.13. Version 1.8.12 still works. (Just uploaded a sketch successfully with 1.8.12.)
Also, in 1.8.13 the Tools->Port menu is greyed out, but looks normal (with several Port options as usual) on 1.8.12.
I am 90% sure that 1.8.13 worked for me in June 2020. Since then I believe I have upgraded to macOS Catalina. Sorry I can't be more definitive than that. :-(
Here are some more details:
Here are the errors I get immediately on launch with Arduino 1.8.13 (but not 1.8.12):
Thank you.
autoantwort commentedon Sep 2, 2020
I still use macOS High Sierra and not Catalina, so I don't think that the OS has a affect or they introduced something in a minor release.
cmaglie commentedon Sep 2, 2020
May you start the IDE from the terminal? It should print some debugging info that you should copy&paste here.
To start the IDE from the terminal:
/Contents/MacOS/Arduino
at the end. The final command line should look like:/Users/cmaglie/Downloads/Arduino.app/Contents/MacOS/Arduino
autoantwort commentedon Sep 2, 2020
cmaglie commentedon Sep 2, 2020
It seems it's picking the Java 8 installed in
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib/jli/libjli.dylib
.Probably we should let the IDE ignore the system-installed Java and always use the bundled JRE.
In the meantime, I would try two workarounds:
or
autoantwort commentedon Sep 2, 2020
I simply deleted the file
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin
. Now everything works.mepster commentedon Sep 3, 2020
Thanks, removing the Oracle Java (I was already on the latest version) got rid of those errors on 1.8.13 for me too.
@autoantwort looks like you are on MacOS (me too). To really clean up the Oracle java you actually have to do all this:
according to the instructions at java.com.
Thanks a lot guys!
P.S. I still have the Apple version of java installed here, which seems to cause no problem:
1 remaining item