Добавить Guava в новый модуль Maven IntelliJ - PullRequest
6 голосов
/ 01 ноября 2011

У меня проблемы с добавлением Google Guava в мой проект IntelliJ. Я пробовал следующее:

  1. От pom.xml, используя ALT - INSERT и выбирая «Зависимость». Я попытался найти "google", "guava" и "google-guava". Ни по одному из этих поисков результатов не найдено.

  2. На веб-сайте гуавы предполагается, что гуаву можно найти в "Maven Central". Я думаю, что это http://repo1.maven.org/maven2/. Я попытался добавить этот URL-адрес в список в Project Settings-> Maven-> Repositories. Если я добавляю его в список «URL-адреса служб Artifactory или Nexus», при нажатии «Тест» я получаю сообщение «Репозитории не найдены». Я не могу найти способ добавить URL в список «Индексированные репозитории Maven» (в котором есть только кнопка «Обновить»).

  3. Я пытался добавить этот <dependency> фрагмент прямо к pom.xml

    <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>10.0.1</version>
    </dependency>
    

    , но com.google.guava подсвечивается красным с подсказкой о том, что зависимость не может быть найдена.

Как я могу заставить IntelliJ добавить Guava в качестве зависимости maven для моего проекта (не загружая его самостоятельно)?

Редактировать

Репозитории Maven, с которыми IntelliJ уже настроен:

Единственная запись в моих "Индексированных репозиториях Maven" - это локальный каталог:

  • / дома / benw / .m2 / хранилище

Ответы [ 3 ]

6 голосов
/ 01 ноября 2011
<dependency>
  <groupId>com.google.guava</groupId>
  <artifactId>guava</artifactId>
  <version>10.0.1</version>
</dependency>

это то, что работает для меня без какой-либо специальной конфигурации для IntelliJ с включенным auto-import для всех моих проектов Maven.Без автоматического импорта вы должны указать IntelliJ разрешить изменения pom.xml вручную.

Убедитесь, что вы не переопределяете значения по умолчанию в pom.xml или ~/.m2/settings.xml с помощью зеркал или других некорректных объявлений репозитория..

3 голосов
/ 01 ноября 2011
  1. ALT - INSERT работает с зависимостями, уже имеющимися в локальном хранилище.
  2. http://repo1.maven.org/maven2 не может быть просмотрено, но правильная ссылка на артефакты работает. Например. попробуйте гуава 10.0.1
  3. После добавления фрагмента зависимости вы должны повторно импортировать проект Maven. Например, ваш фрагмент
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>10.0.1</version>
</dependency>

у меня успешно работает.

2 голосов
/ 01 ноября 2011

Я считаю, что сам Maven (по умолчанию) извлекает из Maven Central автоматически, если у него еще нет определенного артефакта в локальном хранилище. Поэтому все, что вам нужно сделать, это убедиться, что IDEA указывает на «/home/benw/.m2/repository» в качестве локального репозитория и что в /home/benw/.m2/settings.xml изменений нет. "это помешало бы Maven получить доступ к Центральному.

...