Подтвердить что ты не робот

Изменение местоположения кэша Ivy для проектов sbt в IntelliJ IDEA?

У меня есть sbt 0.13.2 с проектом Scala в IntelliJ 13.0.2.

Я просто хочу изменить свой путь по умолчанию ../.ivy2/cache.

Я попытался изменить следующую запись в файле ../bin/sbt в установке SBT

-Dsbt.ivy.home=D:/IvyHome/.ivy

Но не повезло.

enter image description here

Даже в среде IDE я не смог найти место для обновления SBT_HOME

Каким будет решение?

enter image description here

4b9b3361

Ответ 1

Прежде всего, у вас есть два плагина SBT. Версия плагина Scala, который вы используете, уже поддерживает SBT, и вам не нужен дополнительный плагин. Я рекомендую вам начать с удаления дополнительного плагина.

Two Plugins

Удалить неофициальный плагин

Чтобы удалить неофициальный плагин, перейдите в конфигурацию плагинов и снимите флажок рядом с плагином SBT. Это полностью не удалит плагин, но будет отключено.

Disable Plugin

Изменить расположение кэша

После того, как у вас есть только один плагин, вы можете изменить расположение кеша, перейдя в параметры и найти sbt. Вы должны найти запись в настройках IDE.

IDE Settings

Вы должны увидеть параметры виртуальной машины. Щелкните значок рядом с входом и добавьте -Dsbt.ivy.home=D:/IvyHome/.ivy в последнюю строку.

Modify Settings

Нажмите "ОК" и перезапустите среду IDE после сохранения всех настроек.

Теперь вы должны использовать новое домашнее местоположение (конечно, это верно только для сборок, запущенных из IDE, если вы используете SBT с консоли, он все равно будет использовать старую домашнюю настройку).

Измените расположение кэша для SBT, запущенного из консоли

Как указано в пункте выше. Это изменение не повлияет на запуск SBT с консоли. Это связано с тем, что по умолчанию IntelliJ использует SBT.

Если вы хотите изменить свой Ivy home для sbt, который вы запускаете с консоли, у вас есть несколько способов сделать это.

Я думаю, что самым простым является изменение файла sbtconfig.txt в SBT_HOME/conf/sbtconfig.txt (только для Windows - в Linux вам придется изменить sbtopts).

В конце файла добавьте -Dsbt.ivy.home=D:/IvyHome/.ivy.

Другим способом было бы изменить Конфигурация запуска, как описано в документации

Ответ 2

У меня была та же проблема с IntelliJ IDEA 14 Build 139.463.4 (Play Framework 2.2.5 project).

Я выполнил следующие шаги, но это не сработало для меня. Я, наконец, исправил проблему, добавив к параметрам виртуальной машины SBT Runner: -Duser.home = D:/Users/myName/.

Переменная user.home используется SBT Launcher для создания переменной ivy-home.

Ответ 3

Ответ, предлагающий изменить настройки IDE, существенно изменил файл .idea/sbt.xml (если вы внесли изменения для проекта) или C:\Users\***\.IdeaIC14\config\options\project.default.xml (если вы внесли изменения для IDE по умолчанию независимо от того, какой проект).

Поэтому вы можете рассмотреть вопрос о том, как разместить этот файл в исходном контроле, если вам нужно часто его менять. (В моем случае мне пришлось переключаться между библиотеками Spark 1.4 и Spark 1.5, делая это стоящим.)