17.10 openjdk и оракул jdk 8 и 9 trustAnchors параметр должны быть непустыми

Я только что установил 17.10 в новом VM. Попытка настроить среду разработки, когда я работаю gradle или ./gradlew Я получаю следующую ошибку:

* What went wrong:
Error resolving plugin [id: 'com.github.johnrengelman.shadow', version: '2.0.0']
> Could not GET 'https://plugins.gradle.org/api/gradle/4.0/plugin/use/com.github.johnrengelman.shadow/2.0.0'.
   > java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty

Это независимо от gradle версии, версия Java (у и openjdk и оракула 8 и 9 есть отказ), и shadowjar версия. Это приводит меня к заключению, что это - связанная Ubuntu, а не связанный gradle/openjdk/oracle.

Я попытался обновить сертификаты CA, обоих sudo update-ca-certificates -f и sudo apt install ca-certificates-java --reinstall, ни один из которых не решает проблему. Я даже вернулся к проверенному на практике повороту он прочь и на снова технике без влияния.

Какова проблема и как я фиксирую ее?

21
задан 30 October 2017 в 13:56

5 ответов

Я переустановил все с нуля снова, и эта проблема исчезла. Все, что я сделал по-другому, было установкой openjdk-8-jdk до установки openjdk-9-jdk.

Работает. Есть ли какие-либо странные проблемы зависимости?

4
ответ дан 23 November 2019 в 01:41

Я переустановил все с помощью склонного - добираются, и это не решило проблему.

Решение, которое я нашел для работы: Перейдите к Oracle и загрузите tar.gz версию jdk-8. Затем скопируйте cacerts файл с этого в/etc/ssl/certs/java/cacerts

22
ответ дан 23 November 2019 в 01:41

Я скопировал/etc/ssl/certs/java/cacerts файл с резервного копирования более старой установки. Если у Вас есть что-то как этот, это - вероятно, самая легкая опция. Просто удостоверьтесь, что скопировали исходный cacerts файл в случае, если Вы сталкиваетесь с проблемой с другими приложениями.

1
ответ дан 23 November 2019 в 01:41

Я столкнулся с этой проблемой также при попытке настроить инструмент сборки scala (система онлайн бронирования) на моих новых 17,10 установках.

Мое решение состояло в том, чтобы произвести чистку:

sudo apt purge openjdk-9-jdk openjdk-8-jdk java-common

(Просто чистка и переустановка jdk были недостаточно, у меня все еще был a java команда после этого. Только путем чистки java-common это также ушло, и затем переустановка работала. Я предполагаю, что это касается ca-certificates-java* пакет, который очищен java-common.)

Впоследствии, я переустановил Java снова (я выбрал только openjdk-9):

sudo apt install openjdk-9-jdk

Это инициировало: Running hooks in /etc/ca-certificates/update.d... и добавил много файлов сертификата. Теперь моя созданная система онлайн бронирования была успешна:

$ sbt
Getting org.scala-sbt sbt 1.1.0  (this may take some time)...
downloading https://repo1.maven.org/maven2/org/scala-sbt/sbt/1.1.0/sbt-1.1.0.jar ...
    [SUCCESSFUL ] org.scala-sbt#sbt;1.1.0!sbt.jar (657ms)
downloading https://repo1.maven.org/maven2/org/scala-sbt/main_2.12/1.1.0/main_2.12-1.1.0.jar
...  
12
ответ дан 23 November 2019 в 01:41

Oracle изменила формат cacerts файла (от JKS до PCKS12), значение по умолчанию включало JDK в Ubuntu, уже использует PCKS12, но Вы, вероятно, используете более старый JDK, который не может считать его. Я преобразовал свой keystore файл в JKS использование keytool. Вот почему обходное решение для копирования более старого работает на других людей, и почему принятый ответ работает также.

1
ответ дан 23 November 2019 в 01:41

Другие вопросы по тегам:

Похожие вопросы: