Как добавить библиотеки Jar в проект IntelliJ Idea SBT Scala? - PullRequest
28 голосов
/ 26 сентября 2010

Я создал проект IntelliJ Idea SBT Scala, как В статье Хайко Зеебергера описывается.

Я бы хотел добавить библиотеку Jar (joda-time) для использования в этом проекте. Как это сделать? Простое размещение их в / lib проекта не поможет. Если щелкнуть правой кнопкой мыши «Внешние библиотеки» в дереве проекта Idea, «Новый>» будет окрашен в серый цвет.

Ответы [ 6 ]

30 голосов
/ 26 сентября 2010

В окне IntelliJ Idea вашего проекта, выберите Файл >> Структура проекта >> Библиотеки. После выбора этой опции библиотеки появятся две панели. В верхней части самой левой панели нажмите зеленую кнопку «+».

12 голосов
/ 20 апреля 2015

Лучший способ сделать это - добавить ваши неуправляемые зависимости в ваш build.sbt и не оставлять часть вашего управления зависимостями в вашей IDE.

.org / release / docs / Library-Management.html для получения подробной информации о том, как определить ваши задачи unmanagedBase и unmanagedJars.

6 голосов
/ 24 июля 2016

Просто объявите это в build.sbt

unmanagedJars in Compile += file(Path.userHome+"/Your-Jar-Path/Full-Jar-Name.jar")

и требуемый jar появится во внешней библиотеке> unmanaged-jars> Full-Jar-Name.jar. Это также изменится, если файл JAR (по указанному пути) будет изменен.

6 голосов
/ 29 мая 2013

В Intellij Idea:

  • Файл> Структура проекта> Библиотеки

В Netbeans:

  • Файл> Свойства проекта> Библиотеки

В Eclipse:

  • Щелкните правой кнопкой мыши проект> Свойства> Путь сборки Java> Библиотеки
1 голос
/ 15 февраля 2018

Для многомодульного проекта SBT (Intellij 2017.3.4, Scala 12.2.4, sbt 1.1.1) принятое решение работало только до перезапуска или обновления проекта.Действительно, «Настройки проекта-> Модули -> Зависимости», затем «+» и «JAR или каталоги» выдают предупреждение «Модуль X импортирован из Sbt. Любые изменения, внесенные в его конфигурацию, могут быть потеряны после повторного импорта».

Возможное решение :Предложение @zero работает для меня следующим образом:

  1. Поместите JAR в каталог проекта lib.
  2. В build.sbt, внутри lazy var baseSettings = Seq( ... ) addлиния unmanagedJars in Compile += file("YourPath/ProjectBla/lib/controlsfx-8.40.14.jar").
  3. Все еще не повезло?В окне инструмента SBT в настройках sbt модуля в unmanagedBase , unmanagedSourceDirectories (и т. П.) Попробуйте вызвать всплывающие команды «Показать значение» и«Осмотреть» несколько раз.Каким-то образом это может сработать.

    Из ответа Юджина Йокоты на Как добавить неуправляемые JAR-файлы в sbt-сборке к окончательному толстому JAR-файлу? другой вариант (который я не пробовал)добавить отдельный каталог lib в каждый необходимый модуль.

Надеемся, что эти шаги решат проблему или, по крайней мере, помогут отладке.

0 голосов
/ 04 октября 2018

Создайте каталог lib в корневом каталоге вашего проекта, вставьте туда JAR-файлы, запустите sbt reload, закройте проект и снова откройте его.У меня работает в IntelliJ 2018.2.4 и SBT 1.0

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