[英]SBT: add third party library dependency but NoClassDefFoundError
我使用sbt
构建我的Scala项目。
这是我的build.sbt
文件:
name := "SpatialSpark"
version := "1.0"
scalaVersion := "2.10.4"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.2.1"
libraryDependencies += "com.vividsolutions" % "jts" % "1.13"
然后,我尝试将其包装到jar中。 sbt package
最后,我将此提交到Apache-Spark
,
spark-submit --class "com.chen.spatial.SpatialApp" --master local[4] target/scala-2.10/spatialspark_2.10-1.0.jar
它会导致NoClassDefFoundError错误,
Exception in thread "main" java.lang.NoClassDefFoundError: com/vividsolutions/jts/index/strtree/STRtree
我把东西装进罐子里想念吗?
请查看以下模板项目:
https://github.com/spektom/spark-scala-template
要构建uberjar运行:
sbt assembly
要在Spark中运行Jar:
$SPARK_HOME/bin/spark-submit --class com.github.spark.App spark-scala-assembly-0.0.1.jar
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.