我需要同時使用Python代碼火花和Scala火花在我的項目。很多項目配置是Scala編寫的部分,我想從Scala生成的數據並將數據路徑傳遞給我的Python腳本。然後我可以使用Python的生態係統來訓練模型等,生成一個數據集。Scala將讀取結果並將其傳遞到我們的下遊係統。
然而,當我測試下麵的代碼,我遇到了一些問題。我錯了什麼嗎?有什麼更好的方法來實現我的目標?
Cmd 2運行腳本打印你好好用
Cmd 4運行Pyspark python腳本產生這樣的錯誤
錯誤:無法找到或加載主類org.apache.spark.launcher。主要/磚/ / bin / spark-class火花:101行:CMD:壞數組subscriptTraceback(最近的電話最後):/ tmp / cli文件”。py”第23行,在<模塊> cli.main (sys。argv [1], standalone_mode = False)文件“/磚/ python3 / lib / python3.8 /網站/點擊/核心。py”, 1053行,在主房車= self.invoke (ctx)文件”/磚/ python3 / lib / python3.8 /網站/點擊/核心。py”, 1395行,在調用返回ctx.invoke(自我。回調,* * ctx.params)文件“/磚/ python3 / lib / python3.8 /網站/點擊/核心。py”, 754行,在調用返回__callback (* args, * * kwargs)文件“/ tmp / cli。py”,行19日在cli火花= SparkSession.builder.getOrCreate()文件”/磚/火花/ python / pyspark / sql /會話。py”, 229行,getOrCreate sc = SparkContext.getOrCreate (sparkConf)文件“/磚/火花/ python / pyspark /上下文。py”, 392行,在getOrCreate SparkContext(參看= conf或SparkConf())文件”/磚/火花/ python / pyspark /上下文。__init__ SparkContext py”, 145行。_ensure_initialized(自我,網關=網關,conf =配置)文件“/磚/火花/ python / pyspark /上下文。py”, 339行,在_ensure_initialized SparkContext。_gateway =網關或launch_gateway(配置)文件“/磚/火花/ python / pyspark / java_gateway。py”, 108行,在launch_gateway提高異常(“Java網關進程退出之前發送端口號”)例外:Java網關進程發送港口number1之前退出
stdout: java.io.PrintStream@2202fa90
stderr: java.io.PrintStream@4133a68d
進口sys.process._
callPythonCli:()單位