i具有此build.sbt文件,而使用的语法(<< =(现在已弃用。如何更改文件以使其再次工作?我知道有一个页面记录了更改,但我无法正确理解它。
libraryDependencies <<= scalaVersion {
scala_version => Seq(
("org.apache.spark" % "spark-core_2.10" % "1.2.0").
exclude("org.eclipse.jetty.orbit", "javax.mail.glassfish").
exclude("org.eclipse.jetty.orbit", "javax.activation").
exclude("com.esotericsoftware.kryo", "minlog").
exclude("com.esotericsoftware.minlog", "minlog").
exclude("commons-beanutils", "commons-beanutils").
exclude("commons-beanutils", "commons-beanutils-core").
exclude("commons-logging", "commons-logging").
exclude("org.slf4j", "jcl-over-slf4j").
exclude("org.apache.hadoop", "hadoop-yarn-common").
exclude("org.apache.hadoop", "hadoop-yarn-api").
exclude("org.eclipse.jetty.orbit", "javax.transaction").
exclude("org.eclipse.jetty.orbit", "javax.servlet"),
("org.apache.spark" %% "spark-graphx" % "1.2.0").
exclude("org.eclipse.jetty.orbit", "javax.mail.glassfish").
exclude("org.eclipse.jetty.orbit", "javax.activation").
exclude("com.esotericsoftware.kryo", "minlog").
exclude("com.esotericsoftware.minlog", "minlog").
exclude("commons-beanutils", "commons-beanutils").
exclude("commons-beanutils", "commons-beanutils-core").
exclude("commons-logging", "commons-logging").
exclude("org.slf4j", "jcl-over-slf4j").
exclude("org.apache.hadoop", "hadoop-yarn-common").
exclude("org.apache.hadoop", "hadoop-yarn-api").
exclude("org.eclipse.jetty.orbit", "javax.transaction").
exclude("org.eclipse.jetty.orbit", "javax.servlet")
)
}
查看与SBT的警告相关的迁移指南:
[info] Loading global plugins from /.sbt/0.13/plugins
//tmp/build.sbt:3: warning: `<<=` operator is deprecated. Use `key := { x.value }` or `key ~= (old => { newValue })`.
See http://www.scala-sbt.org/0.13/docs/Migrating-from-sbt-012x.html
libraryDependencies <<= scalaVersion {
您可以看到您属于此处的最佳情况:
带有简单的表达式,例如:
a <<= aTaskDef
b <+= bTaskDef
c <++= cTaskDefs
足以用等效替换它们:
a := aTaskDef.value
b += bTaskDef.value
c ++= cTaskDefs.value
所以您的aTaskDef
是{}
因此,您可以解决您的问题:
scalaVersion := "2.11.7"
libraryDependencies := scalaVersion {
scala_version => Seq(
("org.apache.spark" % "spark-core_2.10" % "1.2.0").
exclude("org.eclipse.jetty.orbit", "javax.mail.glassfish").
exclude("org.eclipse.jetty.orbit", "javax.activation").
exclude("com.esotericsoftware.kryo", "minlog").
exclude("com.esotericsoftware.minlog", "minlog").
exclude("commons-beanutils", "commons-beanutils").
exclude("commons-beanutils", "commons-beanutils-core").
exclude("commons-logging", "commons-logging").
exclude("org.slf4j", "jcl-over-slf4j").
exclude("org.apache.hadoop", "hadoop-yarn-common").
exclude("org.apache.hadoop", "hadoop-yarn-api").
exclude("org.eclipse.jetty.orbit", "javax.transaction").
exclude("org.eclipse.jetty.orbit", "javax.servlet"),
("org.apache.spark" %% "spark-graphx" % "1.2.0").
exclude("org.eclipse.jetty.orbit", "javax.mail.glassfish").
exclude("org.eclipse.jetty.orbit", "javax.activation").
exclude("com.esotericsoftware.kryo", "minlog").
exclude("com.esotericsoftware.minlog", "minlog").
exclude("commons-beanutils", "commons-beanutils").
exclude("commons-beanutils", "commons-beanutils-core").
exclude("commons-logging", "commons-logging").
exclude("org.slf4j", "jcl-over-slf4j").
exclude("org.apache.hadoop", "hadoop-yarn-common").
exclude("org.apache.hadoop", "hadoop-yarn-api").
exclude("org.eclipse.jetty.orbit", "javax.transaction").
exclude("org.eclipse.jetty.orbit", "javax.servlet")
)
}.value
您在问题中说明:
,但我无法正确理解它。
您到底不了解什么?如果您可以详细说明,如果我可能能够告诉您更多有关此事的人,它可能会帮助任何面临类似问题的人。