sbt-android:IntelliJ 将 android 支持资源的使用情况标记为红色
Posted
技术标签:
【中文标题】sbt-android:IntelliJ 将 android 支持资源的使用情况标记为红色【英文标题】:sbt-android: IntelliJ marks usages of android support resources red 【发布时间】:2017-01-15 05:31:18 【问题描述】:我正在使用 sbt-android 插件通过 Scala 和 SBT 开发 Android 应用程序。
我用示例代码编写了一个小项目,运行良好。
但是 IntelliJ 将所有指向库资源的“指针”标记为红色 - 所以我可以定义它们,但不能使用它们。
它说,例如: '找不到符号 Theme.AppCompat'.
这里有一些图片:
这是我的 build.sbt:
name := "Scalandroid"
import android.Keys._
import android.Dependencies.apklib,aar
androidBuild
javacOptions ++= Seq("-source", "1.7", "-target", "1.7")
scalaVersion := "2.11.7"
resolvers += "Bugsense repository" at "http://www.bugsense.com/gradle/"
libraryDependencies ++= Seq(
aar("com.android.support" % "appcompat-v7" % "24.2.0"),
aar("com.android.support" % "cardview-v7" % "24.2.0"),
aar("com.android.support" % "support-v4" % "24.2.0"),
aar("com.android.support" % "design" % "24.2.0"),
aar("com.android.support" % "recyclerview-v7" % "24.2.0")
)
scalacOptions in Compile += "-feature"
compileOrder := CompileOrder.JavaThenScala
compileOrder in Android := CompileOrder.JavaThenScala
proguardOptions in Android ++= Seq("-dontobfuscate", "-dontoptimize", "- keepattributes Signature", "-printseeds target/seeds.txt", "- printusage target/usage.txt"
, "-dontwarn scala.collection.**" // required from Scala 2.11.4
)
run <<= run in Android
install <<= install in Android
proguardScala in Android := true
useProguard in Android := true
// Tests //////////////////////////////
libraryDependencies ++= Seq(
"org.apache.maven" % "maven-ant-tasks" % "2.1.3" % "test",
"org.robolectric" % "robolectric" % "3.0" % "test",
"junit" % "junit" % "4.12" % "test",
"com.novocode" % "junit-interface" % "0.11" % "test"
)
// without this, @Config throws an exception,
unmanagedClasspath in Test ++= (bootClasspath in Android).value
这是我的项目/plugins.sbt:
addSbtPlugin("org.scala-android" % "sbt-android" % "1.6.16")
addSbtPlugin("org.scala-android" % "sbt-android-protify" % "1.3.2")
libraryDependencies += "net.sf.proguard" % "proguard-base" % "5.2.1"
【问题讨论】:
【参考方案1】:这是 Intellij 中的一个已知问题
您可以切换到 IDEA 中的 nightly scala 插件或download this file 并替换您的本地副本
【讨论】:
以上是关于sbt-android:IntelliJ 将 android 支持资源的使用情况标记为红色的主要内容,如果未能解决你的问题,请参考以下文章
想了解 Kotlin 和 IntelliJ IDEA 吗? 两位创始大神来给你解读!
IntelliJ Cannot find declaration to goto----解决方案