Scala funkcja main w Intellij

0

Uczę się Scala i chcę żeby po utworzeniu pliku Hello.scala jak wybieram obcject pojawiało się takie coś w Intellij.

object Hello extends App { 
  
}

Obecnie jak tworze plik scala to pojawia się tylko object i nazwa pliku.

object Hello { 
  
}

Dodałem taką formatkę skrótu w Live Templates, ale nawet to nie działa

object Main extends App { 
    println("") 
}

Według tego źródła od razu powinno mi wypisać gdy wybieram plik object. Ale z jakiegoś powodu Intellij tego nie robi.
https://docs.scala-lang.org/getting-started/intellij-track/getting-started-with-scala-in-intellij.html

1

Zasadnicze pytanie: czy kazdy object, ktory bedziesz tworzyc bedzie faktycznie dziedziczyl po App? Nie wydaje mi sie.
Ten jeden main jest az takim problemem?

1

Nie mogę już edytować pierwszego postu, ale w Live Templates dodałem to i też nic się nie pojawia w podpowiedziach, gdy wypisuje nazwę skrótu i wciskam klawisz TAB.

object $END$ extends App { 
    $END$
}

Ok, rozwiązałem problem. Działa.

4
#!/bin/python3
import sys
import textwrap

if len(sys.argv) != 2:
	print(f'Usage: {sys.argv[0]} app-name')
else:
    with open(f'{sys.argv[1]}.scala', 'w') as f:
        f.write(
            textwrap.dedent("""
                            object %s extends App {
                            }
                            """ % sys.argv[1]))

I po problemie ;)

stivens@S410UA ~/test $ chmod +x newapp 
stivens@S410UA ~/test $ ls
newapp
stivens@S410UA ~/test $ ./newapp Test
stivens@S410UA ~/test $ ls
newapp  Test.scala
stivens@S410UA ~/test $ cat Test.scala 

object Test extends App {
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1