【问题标题】:Ensime doesn't work with sbt + android-pluginEnsime 不适用于 sbt + android-plugin
【发布时间】:2011-07-23 21:06:40
【问题描述】:
我使用这个创建了一个项目:https://github.com/gseitz/android-sbt-project.g8
当我在 emacs 中启动 ensime 以编辑 src/main/scala/Activity.scala 时,我几乎到处都有红色突出显示。第一个亮点通过“import root.android.whatever”中的示例说明 android 不是 root 的成员。但是在 sbt 中,一切都编译得很好。如何设置 ensime 以与 sbt + android-plugin 一起正常工作?
【问题讨论】:
标签:
android
scala
emacs
sbt
ensime
【解决方案1】:
让 Ensime 知道在哪里可以找到 android 包。在 .ensime 文件中添加一行,其中包含 android.jar 的路径,例如:
:compile-jars (" [...] /local/share/java/android-sdk-mac_x86/platforms/android-10/android.jar")
【解决方案2】:
之前的答案不再适用于较新版本的 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
无论如何,这仍然只是一个笨拙的黑客来让它工作。正确的解决方法是修复两个插件之一。