Как добавить внешнюю библиотеку в IntelliJ IDEA?

94

Я пытаюсь добавить в свой проект внешнюю библиотеку (помещает ее в каталог / libs). Когда я пытаюсь использовать методы из этой библиотеки, я вижу, что они окрашены в красный цвет, что означает, что библиотека не распознается. Когда я нажимаю Ctrl + B, я получаю сообщение «Не могу найти декларацию для перехода».

Я использую эти шаги, чтобы добавить библиотеку (файл JAR): 1. скопируйте файл библиотеки в каталог / libs 2. откройте Project Structure -> Global Libraries -> Attach clases 3. найдите библиотеку и нажмите ОК

Это правильный способ сделать это?

PS. Я пытаюсь добавить таким образом файл AdMob .jar.

сандалон
источник

Ответы:

156

Более простая процедура в последних версиях:

  • Скопируйте jar в каталог libs в приложении (вы можете создать каталог, если его нет)
  • Обновите проект, чтобы библиотеки отображались в структуре (щелкните правой кнопкой мыши на верхнем уровне проекта, обновите / синхронизируйте)
  • Разверните библиотеки и щелкните правой кнопкой мыши банку
  • Выберите «Добавить как библиотеку».

Выполнено

Немецкий
источник
1
Ребята, это существует только с IDEA 13. Я задал вопрос, я думаю, когда это была IDEA 9.
sandalone
2
@sandalone Сейчас это не имеет значения. Люди, которые приземляются здесь сегодня, скорее всего, уже используют среду IDE, которая поддерживает этот простой метод,
Немецкий
4
«Скопировать jar в каталог libs в приложении» - Но в «приложении» не было каталога libs. В моем каталоге приложений были только каталоги out и src. Итак, я создал новый каталог под названием «libs» и поместил в него банку. Но я не знаю, было ли это то, что предполагалось ... Затем «Обновите проект, чтобы библиотеки отображались в структуре». Я не нашел команды "обновить". Как обновить проект? Новичкам приходится нелегко. :-(
Rafael_Espericueta
1
Этот ответ более изящный. stackoverflow.com/questions/1051640/…
1
«Развернуть библиотеки и щелкнуть правой кнопкой мыши по банке» Неправильно. Когда вы скопировали свою банку в папку «lib», вы должны щелкнуть правой кнопкой мыши папку «lib» и выбрать «Добавить как библиотеку ...»
Джерард Вербек,
64

Я использовал этот процесс для присоединения стороннего Jar к проекту Android в IDEA.

  • Скопируйте Jar в каталог libs /
  • Откройте настройки проекта (Ctrl Alt Shift S)
  • На панели настроек проекта слева выберите Модули.
  • На большей правой панели выберите вкладку Зависимости.
  • Нажмите кнопку Добавить ... в дальнем правом углу экрана (если у вас экран меньшего размера, как у меня, вам, возможно, придется перетащить изменение размера вправо, чтобы увидеть его)
  • В раскрывающемся списке «Добавить» выберите «Библиотека». Появится диалоговое окно «Выбрать библиотеки».
  • Нажмите "Новая библиотека ..."
  • Выберите подходящее название для библиотеки
  • Нажмите "Присоединить классы ..."
  • Выберите Jar из каталога libs / и нажмите OK, чтобы закрыть

Теперь библиотека должна быть распознана.

Тим Ричард
источник
Вы пробовали прикрепить библиотеку AdMob? После этих шагов у меня все еще есть пакет com.google.ads.AdActivity в файле манифеста.
sandalone
Забыл написать, что имя пакета в Манифесте все еще красное (система его не видит) и Ctrl + B все равно не работает.
sandalone
1
@bergnam, ваша проблема может быть вызвана ошибкой синтаксического анализа обфусцированных классов, см. youtrack.jetbrains.net/issue/IDEA-71456 .
CrazyCoder
Хм, может быть. Единственная разница здесь в том, что эта библиотека работает, но не распознается автозаполнением манифеста. Он окрашивает его в красный цвет, и я не могу добавлять пакеты с помощью Ctrl + Space, но мне нужно вводить их вручную.
sandalone
После выполнения этих шагов мне пришлось запустить пакет mvn clean, чтобы библиотека была доступна.
Джен
9

Intellij IDEA 15: Файл-> Структура проекта ...-> Настройки проекта-> Библиотеки

Монти
источник
1
простейшее решение, если вы не хотите добавлять сложность сборки maven / gradle / ant в простой проект
Пьер
Согласовано. Кроме того, зачем делать несколько копий одного и того же файла JAR в каждом проекте?
Ричард Элкинс
2

В конечном итоге лучший способ - интегрировать Gradle в среду вашего проекта. Это инструмент сборки для Java, который сейчас много используется в сфере разработки для Android.

Вам нужно будет создать файл .gradle и перечислить зависимости вашей библиотеки. Затем все, что вам нужно сделать, это импортировать проект в IntelliJ с помощью Gradle.

Ура

АлиР
источник
1

Этот вопрос также можно расширить, если необходимый файл jar можно найти в глобальной библиотеке, как вы можете настроить его в своем текущем проекте.

Процесс выглядит следующим образом: «структура проекта» -> «модули» -> «щелкните панель текущего проекта справа» -> «зависимости» -> «нажмите небольшую кнопку добавления (+)» -> «библиотека» -> «выберите нужную библиотеку».

если вы используете maven, и вы также можете настроить зависимость в своем pom.xml, но если выбранная вами версия не похожа на глобальную библиотеку, вы будете тратить память на хранение другой версии того же файла jar. поэтому я предлагаю использовать первый шаг.

Крабим
источник