为啥执行“sbt 程序集”失败并显示“不是有效的命令:程序集”?
Posted
技术标签:
【中文标题】为啥执行“sbt 程序集”失败并显示“不是有效的命令:程序集”?【英文标题】:Why does executing `sbt assembly` fail with "Not a valid command: assembly"?为什么执行“sbt 程序集”失败并显示“不是有效的命令:程序集”? 【发布时间】:2015-11-21 08:31:52 【问题描述】:我正在尝试安装 spark,以便可以按照此处的指南在 ipython 笔记本中使用 spark: https://beingzy.github.io/tutorial/2014/10/13/spark-tutorial-Part-I-setting-up-spark-and-ipython-notebook-within-10-minutes.html
所以我下载了最新版本的 spark 1.5.2 并运行“构建 spark”部分。这是我得到的错误消息:
C:\Users\Administrator\Downloads\spark-1.5.2\sbt>sbt assembly
[info] Set current project to sbt (in build file:/C:/Users/Administrator/Downloa
ds/spark-1.4.0/sbt/)
[error] Not a valid command: assembly
[error] Not a valid project ID: assembly
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: assembly
[error] assembly
[error] ^
我在 stakoverflow 上遇到了类似的问题。但是,最初的问题是在 Ubuntu 上,而我的问题是在 Windows 上。另外,我没有答案中建议的 spark-0.8.1-incubating 文件夹,因此该解决方案对我不起作用。
"./sbt/sbt assembly" errors "Not a valid command: assembly" for Apache Spark project
请帮忙!
【问题讨论】:
"./sbt/sbt assembly" errors "Not a valid command: assembly" for Apache Spark project的可能重复 这与链接问题中的问题完全相同。 @Reactomonk 但我没有名为 spark-0.8.1-incubating 的文件夹。我在窗户上。所以也许这是同一类问题,但我不知道我能做些什么来解决它。如果您知道,请分享。 你有一个叫spark-1.4.0
(你确定你有1.5.2?)
哦。对不起,实际上我都试过了。结果都一样。
【参考方案1】:
原因是您在sbt
目录中执行sbt assembly
,该目录不是 Spark 的 sbt 构建主目录(在您的情况下是C:\Users\Administrator\Downloads\spark-1.5.2
)。
上一个目录,即C:\Users\Administrator\Downloads\spark-1.5.2
,然后执行./sbt/sbt assembly
。
【讨论】:
以上是关于为啥执行“sbt 程序集”失败并显示“不是有效的命令:程序集”?的主要内容,如果未能解决你的问题,请参考以下文章
为啥执行“mvn clean package”来构建 Spark 失败并显示“某些 Enforcer 规则失败”?
为啥启动 StreamingContext 失败并显示“IllegalArgumentException:需求失败:未注册输出操作,因此没有可执行的操作”?
使用 udf 的 pyspark 出错:您必须使用 Hive 构建 Spark。导出 'SPARK_HIVE=true' 并运行 build/sbt 程序集