Почему "hello, world" не выводится на консоль?
Я просто изучаю scala, и я написал программу "hello, world" следующим образом:
object HelloWorld {
def main(args: Array[String]) {
println("Hello, world!")
}
}
Я сохранил его в файле с именем "helloworld.scala"
Теперь я запустил его в консоли:
scala helloworld.scala
Но ничего не вышло. Я думал, что это выведет "Привет, мир". Почему?
PS
Если я изменяю содержимое на:
println("Hello, world")
и снова запустите, он выведет "привет, мир".
Ответы
Ответ 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", который я не помню прямо сейчас.