首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Hadoop配置文件在Windows上使用SBT构建Spark1.6.1?

如何使用Hadoop配置文件在Windows上使用SBT构建Spark1.6.1?
EN

Stack Overflow用户
提问于 2016-05-10 10:09:57
回答 1查看 207关注 0票数 1

如何在Windows (8-10)上使用SBT构建Spark时激活Hadoop和纱线轮廓?

代码语言:javascript
运行
复制
>sbt package

上面的代码可以工作,但无法用以下方法激活配置文件:

代码语言:javascript
运行
复制
>sbt -Pyarn package

我是在问,因为mvn比SBT慢得多。我有使用SBT和Maven在Linux上构建Spark的经验。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-16 12:00:54

您必须使用与星火源分发捆绑在一起的./build/sbt脚本。它调用了另一个执行与配置文件相关的魔法的脚本sbt-launch-lib.bash

代码语言:javascript
运行
复制
enableProfile () {
  dlog "[enableProfile] arg = '$1'"
  maven_profiles=( "${maven_profiles[@]}" "$1" )
  export SBT_MAVEN_PROFILES="${maven_profiles[@]}"
}

另一方面,项目定义SparkBuild扩展了PomBuild,它允许使用Maven项目(包括概要文件):

代码语言:javascript
运行
复制
override val profiles = {                                                                                                              
  val profiles = Properties.envOrNone("SBT_MAVEN_PROFILES") match {                                                                    
    ...
  }                                                                                                                             
  profiles                                                                                                                             
}    

因此,如果您像这样运行它(使用Cygwin),它应该可以工作:

代码语言:javascript
运行
复制
sh build/sbt -Pyarn package

尽管如此,由于sbt-launch-lib.bash路径的发现不正确,这对我来说是行不通的。因此,我在build\sbt中替换了一行:

代码语言:javascript
运行
复制
. "$(dirname "$(realpath "$0")")"/sbt-launch-lib.bash

代码语言:javascript
运行
复制
. "$(dirname "$(realpath "$0")")"/build/sbt-launch-lib.bash
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37135415

复制
相关文章

相似问题

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