Подтвердить что ты не робот

Почему "hello, world" не выводится на консоль?

Я просто изучаю scala, и я написал программу "hello, world" следующим образом:

object HelloWorld {
    def main(args: Array[String]) { 
        println("Hello, world!") 
    } 
}

Я сохранил его в файле с именем "helloworld.scala"

Теперь я запустил его в консоли:

scala helloworld.scala

Но ничего не вышло. Я думал, что это выведет "Привет, мир". Почему?

PS

Если я изменяю содержимое на:

println("Hello, world")

и снова запустите, он выведет "привет, мир".

4b9b3361

Ответ 1

если вы хотите запустить свой код как script (используя scala helloworld.scala), вы должны сообщить scala, где ваш основной метод: добавление строки

  HelloWorld.main(args)

к вашему коду

второй вариант, который у вас есть, заключается в компиляции script с помощью scalac helloworld.scala а затем вызовите скомпилированную версию вашего класса, используя scala HelloWorld

Ответ 2

У вас есть два варианта.

Скомпилировать и запустить:

Как и в Java, в качестве отправной точки вашего приложения должен быть main -метод. Это нужно скомпилировать с помощью scalac. После этого скомпилированный файл класса можно запустить с помощью scala ClassName

scalac helloworld.scala
scala HelloWorld

Script:

Если у вас только малый script, вы можете напрямую писать код в файл и запускать его с помощью команды scala. Затем содержимое этого файла будет автоматически завернуто в main -метод.

// hello.scala, only containing this:
println("Hello, world!")

затем запустите его:

scala hello.scala

В любом случае я хотел бы компилировать и запускать. Есть некоторые вещи, которые невозможны в "Scalascript", который я не помню прямо сейчас.