Ubuntu 17.10 Java 8 Sertifika Hatası


10

Ben oracle-java8-installer paketini (PPA'dan) kurduğum yeni bir Ubuntu 17.10 kurulumum var.

Ama "iyonik cordova build android" kullanarak bir iyonik proje derlemeye çalıştığımda, bu hatayı atar:

    Exception in thread "main" 
    javax.net.ssl.SSLException: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1959)
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1916)
        at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1899)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1420)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1397)
        at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)
        at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1564)
        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
        at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:263)
        at org.gradle.wrapper.Download.downloadInternal(Download.java:60)
        at org.gradle.wrapper.Download.download(Download.java:45)
        at org.gradle.wrapper.Install$1.call(Install.java:62)
        at org.gradle.wrapper.Install$1.call(Install.java:48)
        at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:69)
        at org.gradle.wrapper.Install.createDist(Install.java:48)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
    Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
        at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:91)
        at sun.security.validator.Validator.getInstance(Validator.java:179)
        at sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:312)
        at sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:171)
        at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:184)
        at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124)
        at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1496)
        at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:1026)
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:961)
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1072)
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1385)
        at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1413)
        ... 14 more
    Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
        at java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:200)
        at java.security.cert.PKIXParameters.<init>(PKIXParameters.java:120)
        at java.security.cert.PKIXBuilderParameters.<init>
    (PKIXBuilderParameters.java:104)
        at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:89)
        ... 26 more

İnternete bağlıyım ve şunları yapmaya çalıştım:

$ sudo update-ca-certificates -f
$ sudo apt install --reinstall ca-certificates-java

... ve npm, ionic, java ve gradle'ı da başarıyla yüklüyorum.

edit: Ayrıca .bashrc ve Android Studio yüklü ANDROID_HOME ve JAVA_HOME ihraç var. Projeyi farklı bir makinede inşa etmeye çalıştım ve iyi çalışıyor. Android Studio ile iyi çalışmadığından OpenJDK kullanmayı deneyemiyorum.

Yanıtlar:


26

Deneyin

sudo dpkg --purge --force-depends ca-certificates-java

bunu takiben

sudo apt-get install ca-certificates-java

kırık cacerleri düzeltmek için.
Benim için bu düzeltildi.
İyi şanslar!


Openjdk-9 için de çalıştım! --reinstallPostinstall komut dosyasını çalıştırdığınızda ve el ile çalıştırdığınızda bunun neden çalıştığına dair herhangi bir açıklama yapılmadı mı? Gelecekte referans olması için çok ilgileniyorum. Teşekkürler!
Andy

1
AMAN TANRIM. Bu cevabı haftalardır arıyordum. Bulduğum bu soruya verilen her cevap hiçbir şey yapmadı, kesinlikle hiçbir şey yapmadı. Bu mükemmel çalıştı. Ubuntu 17.10'daki bu sertifikalarla ilgili bir şey oldukça bozuk görünüyor.
Dan

Jenkins 17.10'da düzeltildi. Teşekkürler (ve upvoted)
Forbesmyester

Teşekkürler benim için kepçe (4.5.1) ve open-jdk-9 ile çalıştı. Ama oracle-jdk-9 ile çalışmadı.
Pabi

Ubuntu 18.04 için çözüm. Openjdk 11 sürümünü kurdum. Android nedeniyle ek olarak openjdk 8'i yüklemek zorunda kaldım. Bilinmeyen bir nedenden ötürü openjdk 11 tarafından yüklenen cacerts dosyası openjdk 8 ile çalışmıyor. Hem jdks'i hem de sadece 8 sürümünü kurduktan sonra cacerleri yeniden oluşturdum dosya.
Greg Dan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.