我在spark notebook中导入magellan-1.0.4-s_2.11时遇到问题。我已经从https://spark-packages.org/package/harsha2010/magellan下载了jar,并尝试将SPARK_HOME/bin/spark-shell --packages harsha2010:magellan:1.0.4-s_2.11放在bin文件夹的spark-notebook文件的Start of Customized Settings部分。
这是我的进口商品
import magellan.{Point, Polygon, PolyLine}
import magellan.coord.NAD83
import org.apache.spark.sql.magellan.MagellanContext
import org.apache.spark.sql.magellan.dsl.expressions._
import org.apache.spark.sql.Row
import org.apache.spark.sql.types._我的错误..。
<console>:71: error: object Point is not a member of package org.apache.spark.sql.magellan
import magellan.{Point, Polygon, PolyLine}
^
<console>:72: error: object coord is not a member of package org.apache.spark.sql.magellan
import magellan.coord.NAD83
^
<console>:73: error: object MagellanContext is not a member of package org.apache.spark.sql.magellan
import org.apache.spark.sql.magellan.MagellanContext然后,我尝试像导入任何其他库一样将新库导入到main script中,如下所示:
$lib_dir/magellan-1.0.4-s_2.11.jar"这没有起作用,我只能挠头,想知道我做错了什么。如何将magellan等库导入spark notebook?
发布于 2017-03-12 11:23:12
试着评估一些东西,比如
:dp "harsha2010" % "magellan" % "1.0.4-s_2.11"它会将库加载到Spark中,允许它被imported -假设它可以通过Maven获得。在我的例子中,它失败了,并显示一条消息:
failed to load 'harsha2010:magellan:jar:1.0.4-s_2.11 (runtime)' from ["Maven2 local (file:/home/dev/.m2/repository/, releases+snapshots) without authentication", "maven-central (http://repo1.maven.org/maven2/, releases+snapshots) without authentication", "spark-packages (http://dl.bintray.com/spark-packages/maven/, releases+snapshots) without authentication", "oss-sonatype (https://oss.sonatype.org/content/repositories/releases/, releases+snapshots) without authentication"] into /tmp/spark-notebook/aether/b2c7d8c5-1f56-4460-ad39-24c4e93a9786我认为文件太大了,在下载整个文件之前连接就中断了。
解决方法
因此,我手动从以下位置下载了JAR:
http://dl.bintray.com/spark-packages/maven/harsha2010/magellan/1.0.4-s_2.11/并将其复制到:
/tmp/spark-notebook/aether/b2c7d8c5-1f56-4460-ad39-24c4e93a9786/harsha2010/magellan/1.0.4-s_2.11然后:dp命令起作用了。请先尝试调用它,如果调用失败,请将JAR复制到正确的路径中以使其正常工作。
更好的解决方案
我应该调查一下为什么下载一开始没能修复它…或者把这个库放在我本地的M2库中。但这应该会让你振作起来。
发布于 2017-04-12 16:56:39
我建议检查以下内容:
和
https://github.com/spark-notebook/spark-notebook/blob/master/docs/metadata.md#add-spark-packages
我认为:dp魔术命令已经过时了,相反,您应该在notebook元数据中添加您的自定义依赖项。你可以进入菜单Edit > Edit notebook metadata,在那里添加如下内容:
"customDeps": [
"harsha2010 % magellan % 1.0.4-s_2.11"
]一旦完成,你将需要重新启动内核,你可以在浏览器控制台中检查包是否被正确下载。
发布于 2018-01-10 21:39:23
最简单的方法是,设置或添加EXTRA_CLASSPATH环境变量,使其指向下载的.jar文件:export EXTRA_CLASSPATH = </link/to/your.jar>或wondows OS中的set EXTRA_CLASSPATH= </link/to/your.jar>。Here find the detailed solution。
https://stackoverflow.com/questions/42686240
复制相似问题