1. 程式人生 > >Intellij IDE+ Spark 2.4 例子執行(原始碼斷點跟蹤)

Intellij IDE+ Spark 2.4 例子執行(原始碼斷點跟蹤)

上一篇文章寫了如何通過Maven編譯原始碼,該篇說明如何在IDE中引入專案,並執行其中一個例子。

   要求:IDE中安裝了Scala外掛

一、開啟IDE,並加入專案,按如下操作

Menu -> File -> Open -> {spark dir}/pom.xml -> Open as Project

這裡寫圖片描述

二、匯入spark工程後,例項程式碼在:在{spark dir}/examples/目錄下 。雙擊“Shift”鍵,輸入 LogQuery開啟例項檔案(可見上圖)

三、配置執行相關引數,主要配置項為 VM options: -Dspark.master=local (代表使用本地模式執行spark程式碼),如下圖
這裡寫圖片描述

四、下就是解決問題了。
在實際使用環境中,我們寫的Spark應用都是打好包後,一般再通過 spark-submit 命令執行,這樣Spark所依賴的相關jar都是已經存在,但是現在在IDE中執行,那麼就需要對依賴包進行處理。

1、按上面的方式執行 LogQuery檔案,會提示以下異常(實際專案編譯是成功的)。

這裡寫圖片描述

解決方法:
1) File -> Project Structure,開啟如下圖所示
這裡寫圖片描述

2)執行jar檔案所在目錄 :{spark dir}/spark/assembly/target/scala-2.11/jars/ 說明:這個目錄是我們在上一篇文章maven編譯完spark原始碼後會生成的。

     **注意:如果修改了Spark原始碼,需要重新編譯的:mvn -T 4 -DskipTests clean package  
                   -T 是代表執行緒數**

再次執行,可以看到執行成功了

這裡寫圖片描述