Ensime не работает с sbt + android-плагином
Я создал проект, используя это: https://github.com/gseitz/android-sbt-project.g8
Когда я запускаю ensime в emacs для редактирования src/main/scala/Activity.scala, у меня есть красные выделения почти везде. Первое выделение говорит в качестве примера в "import root.android.wh независимо", что android не является членом root. Но в SBT все компилируется нормально. Как я могу настроить ensime для правильной работы с sbt + android-plugin?
2 ответа
Дайте Ensime знать, где можно найти android
пакеты. Добавьте в файл.ensime строку, содержащую путь к android.jar
, например:
:compile-jars (" [...] /local/share/java/android-sdk-mac_x86/platforms/android-10/android.jar")
Предыдущий ответ больше не работает с более новыми версиями ensime. Новая версия требует что-то вроде
:compile-deps ("/home/aij/android/sdk/platforms/android-21/android.jar" ...)
Вот одна строка, чтобы отредактировать файл для вас, предполагая, что $ANDROID_HOME установлен:
sed -i~ 's|:compile-deps (|:compile-deps ("'"$ANDROID_HOME"'/platforms/android-21/android.jar" |' .ensime
Во всяком случае, это все еще просто грязный хак, чтобы заставить его работать. Надлежащим решением будет исправить один из двух плагинов.