У меня есть Java-приложение, которое использует spark для доступа к данным из различных источников данных (hadoop, локальная файловая система, ..) в различных форматах (json, avro, ...).
SparkSession spark = SparkSession
.builder()
.appName("Spark app")
.master("local")
.getOrCreate();
Dataset<Row> dataset = spark
.read()
.format(FORMAT)) // avro, json, ...
.load(FILEPATH);
IЯ могу создать толстый JAR и запустить его через "Java-JAR".Нет проблем, если я использую JSON как «FORMAT».Но если заменить «JSON» на «AVRO», то будет выдано исключение, что Failed to find data source: AVRO. Avro is built-in but external data source module since Spark 2.4
.Если я запускаю его непосредственно в (IDE), то все работает даже с avro, но если он работает в jar, то работает только JSON.
Я знаю, что avro - это внешний источник данных для запуска и что его нужно каким-то образом добавить вСпарк, но не знаю, как и если вообще возможно запустить такое приложение только через java -jar app.jar -param -param1