Как изменить URL-адрес удаленного репозитория maven в IDE NetBeans (с http на https)? - PullRequest
3 голосов
/ 03 февраля 2020

При попытке запустить проект NetBeans я получаю следующее сообщение об ошибке:

Не удалось выполнить цель org. apache .maven.plugins: maven-surefire-plugin: 2.10: test (default-test) в проекте MyNetBeansProject: Выполнение default-test цели org. apache .maven.plugins: maven-surefire-plugin: 2.10: тест не пройден: Plugin org. apache .maven.plugins: maven-surefire -plugin: 2.10 или одна из его зависимостей не может быть разрешена: не удалось собрать зависимости для org. apache .maven.plugins: maven-surefire-plugin: jar: 2.10 (): не удалось прочитать дескриптор артефакта для org. apache .maven.surefire: верный загрузчик: jar: 2.10: не удалось передать артефакт орг. apache .maven.surefire: верный загрузчик: pom: 2.10 от / к центральному (http://repo.maven.apache.org/maven2 ): Не удалось передать файл: http://repo.maven.apache.org/maven2/org/apache/maven/surefire/surefire-booter/2.10/surefire-booter-2.10.pom. Код возврата: 501, ReasonPhrase: требуется HTTPS. -> [Справка 1]

Наиболее важной является следующая часть сообщения об ошибке:

Не удалось передать файл: http://repo.maven.apache.org/maven2/org/apache/maven/surefire/surefire-booter/2.10/surefire-booter-2.10.pom. Код возврата: 501, ReasonPhrase: требуется HTTPS.

Службы -> Репозитории Maven -> Центральный репозиторий -> щелчок правой кнопкой мыши по «Центральному репозиторию» дает следующую информацию:

enter image description here

Как видно, URL удаленного репозитория имеет вид "http://repo.maven.apache.org/maven2/". Я думаю, что вместо этого должно быть "https://repo.maven.apache.org/maven2/". Однако проблема в том, что я не могу изменить URL-адрес удаленного репозитория.

Кто-нибудь знает, как изменить URL-адрес удаленного репозитория maven в IDE NetBeans?


ОБНОВЛЕНИЕ:

В NetBeans -> Настройки можно увидеть, что версия maven, используемая в моей среде IDE NetBeans, - это версия 3.0.5:

enter image description here

Ответы [ 2 ]

5 голосов
/ 03 февраля 2020

Я думаю, у вас есть три варианта.

1. Миграция до 11.0

Вы можете перейти на Netbeans 11.0 LTS (или 11.2), он использует встроенную версию Maven 3.3.9. Он уже использует https.

enter image description here

2. Установите автономный Apache Maven

Вы можете остаться с Netbeans 8.2, но загрузить автономный apache maven, установить его в свою систему и указать путь к новому домашнему каталогу maven в Параметры -> Java -> Maven -> Maven Home.

Вам нужно всего лишь:

  1. Скачать apache -maven-3.6.3-bin.zip (или apache -maven-3.6.3-bin.tar.gz) из Apache
  2. Распакуйте его в любой каталог. Это будет домашний каталог Maven.
  3. Установите домашний каталог Maven в NetBeans на каталог, в который вы распаковали zip-файл.
  4. Убедитесь, что вы установили JAVA_HOME в свои переменные среды

Инструкции по установке автономной версии здесь .

Если вы установите Maven Главная в NetBeans правильно покажет вам обновленную версию: enter image description here

3. Быстро и не рекомендуется

Просто добавьте репозитории в ваш pom. xml с https (например, вот так )

<repositories>
        <repository>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <id>central</id>
            <name>Central Repository</name>
            <url>https://repo.maven.apache.org/maven2</url>
        </repository>
    </repositories>
<pluginRepositories>
    <pluginRepository>
        <releases>
            <updatePolicy>never</updatePolicy>
        </releases>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <id>central</id>
        <name>Central Repository</name>
        <url>https://repo.maven.apache.org/maven2</url>
    </pluginRepository>
</pluginRepositories>

Maven Central перенесен в https

Проблема возникает из this :

С 15 января 2020 г. Центральный репозиторий больше не поддерживает небезопасную связь по HTTP и требует, чтобы все запросы к репозиторию зашифрованы по протоколу HTTPS.

Вот соответствующее исправление, которое было исправлено и имеет отношение изменения .

3 голосов
/ 07 апреля 2020

В рамках установки Netbeans это сработало для меня:

Перейти к Netbeans installation folder > java > maven > conf, и здесь я обновил файл settings.xml, используя административную привилегию.

, так как http-ссылка на репо не будет работать Теперь, я только что создал зеркало для репозитория central, предварительно созданного с помощью IDE, которое нельзя изменить.

Добавьте этот тег внутренних зеркал settings.xml

<mirror>
      <id>mirror1</id>
      <mirrorOf>central</mirrorOf>
      <name>mirror1</name>
      <url>https://repo.maven.apache.org/maven2/</url>
</mirror>

после этого перезапустите IDE NetBeans, и центральное хранилище будет переопределено указанным нами зеркалом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...