Я пытался воспроизвести метод MyDowell. Наконец-то я смог заставить это работать. Однако я нахожу, что ответ, хотя и правильный, слишком сложен для новичка (в частности, структура каталогов излишне сложна).
Я могу воспроизвести этот результат очень упрощенно. Для начала есть только один каталог, который содержит три файла:
helloworld.scala
MANIFEST.MF
scala-library.jar
helloworld.scala
object HelloWorld
{
def main(args: Array[String])
{
println("Hello, world!")
}
}
MANIFEST.MF:
Main-Class: HelloWorld
Class-Path: scala-library.jar
первая компиляция helloworld.scala:
scalac helloworld.scala
затем создайте банку:
\progra~1\java\jdk18~1.0_4\bin\jar -cfm helloworld.jar MANIFEST.MF .
теперь вы можете запустить его с:
java -jar helloworld.jar
Я нашел это простое решение, потому что оригинал не работал. Позже я узнал, что это не потому, что это неправильно, а из-за тривиальной ошибки: если я не закрою вторую строку в MANIFEST.MF новой строкой, то эта строка будет проигнорирована. Мне потребовался час, чтобы выяснить это, и я попробовал все остальное, находясь в процессе поиска этого очень простого решения.