Следующий код Scala
в Azure Synapse
должен вывести: Hello, World!
. Но вместо этого он печатает: defined object Geeks
.
Вопрос: В чем может быть проблема и как ее исправить?
object Geeks {
// Main method
def main(args: Array[String])
{
// prints Hello, Geeks!
println("Hello, World!")
}
}
ОБНОВЛЯТЬ:
Я сталкиваюсь с точно такой же проблемой, когда запускаю вышеуказанное notebook
в Databricks Community
редакции от компании Databricks.
@GaëlJ, это правильно. Блокнот. Прочитав ваш комментарий, я также добавил раздел ОБНОВЛЕНИЕ - на всякий случай.
Когда вы определяете объект с помощью метода main
в блокноте, объект компилируется и загружается в память, но метод main
не выполняется автоматически. Чтобы выполнить метод main
, вам необходимо вызвать его явно вне определения объекта. Ниже приведен способ вызова основной функции внутри объекта:
Geeks.main(Array())
Здесь я указал пустое значение массива, поскольку оно не имеет никакого влияния на этот код. Вы можете передавать необходимые аргументы при вызове разных объектов.
Хорошо объяснил. Это сработало - спасибо.
@NaveenSharma Упс!!. Я забыл принять его решение, хотя поставил ему +1. Спасибо, что напомнили мне — это действительно помогает сообществу SO, и мы все должны сделать это, когда это решит проблему, описанную в сообщении.
Можете ли вы объяснить, как запустить этот код в Azure Synapse? Блокнот?