首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >转换不推荐的sbt生成文件

转换不推荐的sbt生成文件
EN

Stack Overflow用户
提问于 2018-02-20 18:28:41
回答 1查看 980关注 0票数 1

我有这个build.sbt文件,现在不再推荐使用的语法( <<= )。如何更改文件以使其再次工作?我知道有一页记录了这些更改,但我无法正确理解它。

代码语言:javascript
复制
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")
        )
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-20 18:38:13

查看由sbt发出的警告链接到的迁移指南

代码语言:javascript
复制
[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 {

你可以看到你掉进了最上面的箱子:

使用简单的表达式,例如:

代码语言:javascript
复制
a <<= aTaskDef
b <+= bTaskDef
c <++= cTaskDefs

只要用相应的方法取代它们就足够了:

代码语言:javascript
复制
a := aTaskDef.value
b += bTaskDef.value
c ++= cTaskDefs.value

所以你的aTaskDef{}之间的一部分

因此,您可以解决您的问题如下:

代码语言:javascript
复制
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

你在你的问题中说:

但我不能很好地理解。

你到底不明白什么?如果你能详细说明的话,如果这是我能告诉你更多的事情,它可能会帮助任何面临类似问题的人。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48891962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档