如何添加用于pysp的第三方javajar

2024-10-02 10:34:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些Java的第三方数据库客户端库。我想通过

java_gateway.py

例如:创建客户机类(不是jdbc驱动程序!)可通过java网关提供给python客户端:

java_import(gateway.jvm, "org.mydatabase.MyDBClient")

不清楚在哪里将第三方库添加到jvm类路径。我试图添加到compute-classpath.sh,但这似乎不起作用:我得到

 Py4jError: Trying to call a package

另外,当与配置单元进行比较时:配置单元jar文件不是通过compute-classpath.sh加载的,所以这让我怀疑。似乎还有其他一些机制正在设置jvm端类路径。


Tags: py路径数据库客户端客户机sh驱动程序jvm
3条回答

可以将外部jar作为参数添加到pyspark

pyspark --jars file1.jar,file2.jar

使用spark submit时可以添加--jars xxx.jar

./bin/spark-submit --jars xxx.jar your_spark_script.py

或者设置环境变量SPARK_CLASSPATH

SPARK_CLASSPATH='/path/xxx.jar:/path/xx2.jar' your_spark_script.py

your_spark_script.py由pyspark API编写

您可以在运行时使用Spark配置将路径添加到jar文件。

下面是一个例子:

conf = SparkConf().set("spark.jars", "/path-to-jar/spark-streaming-kafka-0-8-assembly_2.11-2.2.1.jar")

sc = SparkContext( conf=conf)

有关详细信息,请参阅document

相关问题 更多 >

    热门问题