本文介紹如何在本地IDEA遠端調試Spark On HBase。
前提條件:
1、已經安裝了Intellij IDEA,Git、Maven。
2、HBase叢集開通了外網位址。
3、HBase叢集為IDEA運作的機器開通了白名單。
說明:
本執行個體用到的版本
軟體名稱 | 版本 |
Intellij IDEA | community 2018.3.1 |
作業系統:macOS/Windows | mac:10.13.6; Windows 10 |
jdk | 1.8.0_25 |
scala | 2.11.8 |
Maven | 3.3.9 |
Idea 遠端調試步驟
步驟 1: 下載下傳樣例代碼
使用git clone 指令下載下傳代碼樣例代碼。
git clone https://github.com/aliyun/aliyun-apsaradb-hbase-demo.git
步驟 2: 導入代碼到IDEA。
打開IDEA,選擇"File">"Open...",選擇步驟 1下載下傳的代碼:aliyun-apsaradb-hbase-demo
步驟 3: 設定運作配置
本執行個體Debug的類為:com.aliyun.spark.hbase.SparkOnHBaseSparkSession
點選IDEA運作按鈕,選擇"Edit Configurations..."進入配置頁面,配置内容如下頁面:

主要配置參數說明:
參數名稱 | 值 | 說明 |
Main class | com.aliyun.spark.hbase.SparkOnHBaseSparkSession | 運作主類 |
VM options | -Dspark.master=local | Spark 本地運作 |
Program arguments | hb-xxx:2181,hb-xxx:2181,hb-xx:2181 mytable spark_on_hbase | 三個參數分别為:ZK連結位址(外網位址),hbase側的表名 ,spark側的表名 |
Use classpath of module | spark-examples | 同時勾選“Include dependencie是with "Provided" scope” |
步驟 4:開始Debug
在類com.aliyun.spark.hbase.SparkOnHBaseSparkSession的如下位置設定斷點:
搜尋類:org.apache.hadoop.hbase.spark.DefaultSource,并在如下位置設定斷點:
然後右鍵類com.aliyun.spark.hbase.SparkOnHBaseSparkSession,選擇“Debug SparkOnHBaseSparkSession”開始Debug。如下: