Как решить соединение при установке aws toolkit на eclipse Neon?
Я в компании, и мне нужно установить прокси для подключения к Интернету. Настройка прокси-сервера в порядке, потому что я могу подключиться к другому веб-сайту, например. Neon - http://download.eclipse.org/releases/neon, но не для http://aws.amazon.com/eclipse.
Сообщение об ошибке:
Невозможно прочитать репозиторий https://aws.amazon.com/eclipse/content.xml. Не удалось прочитать репозиторий на https://aws.amazon.com/eclipse/content.xml. sun.security.validator.ValidatorException: Не удалось создать путь PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найдите действительный путь сертификации для запрошенной цели.
Конкретный стек:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: Не удалось создать путь PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти действительный путь сертификации для запрошенной цели at sun.security.ssl.Alerts.getSSLException(Неизвестный источник) at sun.security.ssl.SSLSocketImpl.fatal(Неизвестный источник) at sun.security.ssl.Handshaker.fatalSE(Неизвестный источник) at sun.security.ssl.Handshaker.fatalSE(Неизвестный источник) at sun.security.ssl.ClientHandshaker.serverCertificate(Неизвестный источник) at sun.security.ssl.ClientHandshaker.processMessage(Неизвестный источник) at sun.security.ssl.Handshaker.processLoop(Неизвестный источник) at sun.security.ssl.Handshaker.process_record (Неизвестный источник) at sun.security.ssl.SSLSocketImpl.readRecord(Неизвестный источник) at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Неизвестный источник) at sun.security.ssl.SSLSocketImpl.startHandshake(Неизвестный источник) at sun.security.ssl.SSLSocketImpl.startHandshake(Неизвестный источник) на org.apache.http.conn.ssl.SSLSocketFactory.createLayeredSocket(SSLSocketFactory.java:554) at org.apache.http.conn.ssl.SSLSocketFactory.createLayeredSocket(SSLSocketFactory.java:435) at org.apache.http.impl.conn.DefaultClientConnectionOperator.updateSecureConnection(DefaultClientConnectionOperator.java:216) at org.apache.http.impl.conn.ManagedClientConnectionImpl.layerProtocol(ManagedClientConnectionImpl.java:394) at org.apache.http.impl.client.DefaultRequestDirector.establishRoute(DefaultRequestDirector.java:814) at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:615) at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:446) at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863) at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82) на org.eclipse.ecf.provider.filetransfer.httpclient4.HttpClientFileSystemBrowser.runRequest(HttpClientFileSystemBrowser.java:263) на org.eclipse.ecf.provider.filetransfer.browse.AbstractFileSystemBrowser $DirectoryJob.run(AbstractFileSystemBrowser.java:69) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Причина: sun.security.validator.ValidatorException: Не удалось создать путь PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти действительный путь сертификации для запрошенной цели at sun.security.validator.PKIXValidator.doBuild(Неизвестный источник) at sun.security.validator.PKIXValidator.engineValidate(Неизвестный источник) at sun.security.validator.Validator.validate(Неизвестный источник) at sun.security.ssl.X509TrustManagerImpl.validate(Неизвестный источник) at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Неизвестный источник) at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Неизвестно Источник) ... еще 20 Вызывается: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти действительный путь сертификации для запрошенной цели at sun.security.provider.certpath.SunCertPathBuilder.build(Неизвестно Источник) at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Неизвестно Источник) в java.security.cert.CertPathBuilder.build(Неизвестный источник) ... 26 подробнее
Ответы
Ответ 1
Это связано с тем, что java не признает сертификат SSL сертификата сертификации (CA) https://aws.amazon.com.
Решение состоит в том, чтобы добавить этот сертификат в файл java cacerts, чтобы он был принят навсегда.
Шаг 1: Получите сертификат root https://aws.amazon.com
- Откройте https://aws.amazon.com в браузере Chrome.
- Выберите Inspect из контекстного меню (щелкните правой кнопкой мыши на странице) и перейдите на вкладку безопасности
- Нажмите "Просмотреть сертификаты"
- Нажмите на самый верхний сертификат по иерархии и подтвердите, что он связан с фразой Root CA.
- перетащите изображение, которое вы видели на рабочем столе.
Вот оно! вы получили свой корневой сертификат!
Шаг 2. Получите этот сертификат, добавленный в файл java cacerts.
- используйте keytool.exe внутри папки jre bin.
- пожарная команда, чтобы поместить ваш сертификат в файл cacerts
keytool -import -noprompt -trustcacerts -alias ALIASNAME файл /PATH/TO/YOUR/DESKTOP/CertificateName.cer -keystore /PATH/TO/YOUR/JDK/jre/lib/security/cacerts -storepass changeit
Вот и все! вы решили проблему.
ОБРАТИТЕ ВНИМАНИЕ
- Подтвердите, что jre, который дает вам эту ошибку PKIX (JRE, используемую eclipse или вашим приложением после развертывания), где вы выполняете STEP 2. Если вы попытаетесь с другой проблемой jre, она будет такой, какая есть.
Ответ 2
Попробуйте изменить настройки Window/Preferences/Network из Native to Direct.
Запуск затмения из CLI с помощью "eclipse.exe -clean"
Повторите обновление
Ответ 3
Перейдите в Eclipse → Окно → Настройки → Настройки сети
Изменить активный провайдер на прямой
Сохранить
Вернуться к установке программного обеспечения
Попробуйте снова вытащить из AWS Repo
На этот раз он будет работать