В настоящее время я создаю свою IDE разработки с использованием Intellij IDEA. Я следовал точно так же, как http://spark.apache.org/docs/latest/quick-start.htmlКак отладить программу Spark на основе Scala на Intellij IDEA
build.sbt файл
name := "Simple Project"
version := "1.0"
scalaVersion := "2.11.7"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.0.0"
Пример программы File
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
object MySpark {
def main(args: Array[String]){
val logFile = "/IdeaProjects/hello/testfile.txt"
val conf = new SparkConf().setAppName("Simple Application")
val sc = new SparkContext(conf)
val logData = sc.textFile(logFile, 2).cache()
val numAs = logData.filter(line => line.contains("a")).count()
val numBs = logData.filter(line => line.contains("b")).count()
println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
}
}
Если я использую командную строку:
sbt package
, а затем
spark-submit --class "MySpark" --master local[4] target/scala-2.11/myspark_2.11-1.0.jar
Я могу генерировать упаковку и искра хорошо работает.
Однако я хочу использовать Intellij IDEA для отладки программы в среде IDE. Как настроить конфигурацию, так что, если я нажму «debug», она автоматически сгенерирует пакет jar и автоматически запустит задачу, выполнив командную строку «spark-submit-».
Я просто хочу, чтобы все было просто, как «один клик» на кнопке отладки в Intellij IDEA.
Спасибо.
Спасибо за ответ. Как я могу найти порт и имя моей местной искры? – lserlohn
- это порт и имя «localhost: 7077»? Я получил «Ошибка при запуске Spark: Не удалось открыть порт отладчика (localhost: 7077): java.net.ConnectException« Соединение отказано »« – lserlohn
вам не следует устанавливать искровой порт, вы можете просто поместить порт таким же, как адрес в SPARK_SUBMIT_OPTS в выше SPARK_SUBMIT_OPTS, вы можете см. адрес = 7777, поэтому теперь просто измените порт в удаленной конфигурации и добавьте одну контрольную точку в ur-код, теперь sun spark-sumit и его show msg прослушивающий порт 7777, затем перейдите к itellij и нажмите на debug, который создает –