2015-06-29 3 views
1

Я использую maven build в моем проекте. У меня есть корпоративный репозиторий в нашей локальной сети. Этот репозиторий размещается на https.Доступ к локальному хранилищу Nexus через https из eclipse

У меня проблемы с доступом к этому хранилищу от затмения.

Ошибки отображаемая:

Multiple annotations found at this line: 
    - Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-compiler-plugin:2.5.1:compile (execution: default-compile, phase: compile) 
    - CoreException: Could not calculate build plan: Plugin org.apache.maven.plugins:maven-compiler-plugin:2.5.1 or one of its dependencies could not be resolved: Failed to read artifact descriptor 
    for org.apache.maven.plugins:maven-compiler-plugin:jar:2.5.1: ArtifactResolutionException: Failure to transfer org.apache.maven.plugins:maven-compiler-plugin:pom:2.5.1 from https:// 
    NexusServer/nexus/content/groups/CLM/ was cached in the local repository, resolution will not be reattempted until the update interval of nexus has elapsed or updates are forced. Original 
    error: Could not transfer artifact org.apache.maven.plugins:maven-compiler-plugin:pom:2.5.1 from/to nexus (https://NexusServer/nexus/content/groups/CLM/): 
    sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 
    - Plugin execution not covered by lifecycle configuration: org.apache.maven.plugins:maven-compiler-plugin:2.5.1:testCompile (execution: default-testCompile, phase: test-compile) 

Я гугл немного и нашел решение передать сертификат во время работы Maven сборки. Я загрузил сертификат и передал его maven с помощью -Djavax.net.ssl.trustStore = Path/To/My/KeyStore

Инструмент командной строки отлично работает. Тем не менее, я все еще не могу построить проект, используя maven в eclipse.

Maven не загружает новые зависимости из локального репозитория.

Заранее благодарим за помощь!

Prabodh

ответ

2

Ваш Nexus использует сертификат SSL, который не считается действительным на Java под управлением Eclipse. Это связано с тем, что сертификат в Nexus не был подписан доверенным корневым центром сертификации, таким как Verisign.

Чтобы установить это, вам необходимо установить открытый сертификат в Nexus в хранилище Java для Java, работающего под Eclipse, и тогда ему будет доверять. Вы можете использовать наш импорт-ssl.jar утилита, чтобы помочь вам в этом, смотрите раздел 24.2.3 здесь:

https://books.sonatype.com/nexus-book/reference/ssl-sect-client-cert.html

+0

Спасибо! Я загрузил сертификат. Теперь кажется, что eclipse может подключиться к моему репозиторию nexus. Если я запустил «Обновить проект», обновление завершится успешно. Раньше он всегда застрял, пытаясь подключиться к ней. Однако упомянутые выше ошибки все еще сохраняются. Если я добавляю новую зависимость, банки не загружаются автоматически. Если я запустил плагин maven eclipse (mvn eclipse: eclipse) из командной строки, банки загружаются и отображаются в «Связанных библиотеках». –

Смежные вопросы