我是scala和sbt的新手,我在intellij中运行项目时遇到了麻烦。这是我尝试导入intellij的示例项目。
https://github.com/snowplow/spark-example-project
如果我从命令行运行sbt assembly命令,但是如果我尝试创建一个"应用程序"它可以正常工作在intellij中运行配置我的依赖项中出现错误:引起:java.lang.ClassNotFoundException:org.apache.hadoop.util.Tool
如何在intellij中运行和调试sbt项目?
答案 0 :(得分:0)
是的,在Intellij中运行火花是一个挑战:如果这样做的“答案”会根据火花版本进行更改,如果你是在跑掉了主人还是没有。
最好的选择是:
警告:这个过程从2015年初开始大师工作 - 以及截至2015年3月中旬发布的1.3.0分支。
以前在导入完成后,Intellij项目/模块需要进行一些必要的手术。
答案 1 :(得分:0)
重要的是让你的依赖关系正确。
我喜欢创建一个lib文件夹并将我的spark文件放在那里,例如。
lib中的:
spark-streaming_2.10-2.1.0.jar
spark-sql_2.10-2.1.0.jar
spark-core_2.10-2.1.0.jar
然后我的sbt文件:
name := "Project_Name"
version := "1.0"
scalaVersion := "2.10.6"
retrieveManaged := true
// https://mvnrepository.com/artifact/org.apache.spark/spark-core_2.10
libraryDependencies += "org.apache.spark" % "spark-core_2.10" % "2.1.0"
// https://mvnrepository.com/artifact/org.apache.spark/spark-sql_2.10
libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "2.1.0"
// https://mvnrepository.com/artifact/org.apache.spark/spark-streaming_2.10
libraryDependencies += "org.apache.spark" % "spark-streaming_2.10" % "2.1.0" % "provided"
正如您所看到的,我强烈建议您从https://mvnrepository.com
获取.jar和您在sbt文件中粘贴的字符串。另外,请查看jar文件版本。它们应该是相同的(在我的情况下为2.10-2.1.0)