Reputation: 6343
I have a simple scala program:
main.scala
:
object Program {
def main(args: Array[String]) {
println("Hello World");
}
}
It compiles just fine:
$ scalac -nowarn -d bin/scala.jar code/main.scala
When I run it, I get the error:
$ scala bin/scala.jar
Exception in thread "main" java.lang.RuntimeException: Cannot find main class for jar: bin/scala.jar
at scala.sys.package$.error(package.scala:27)
at scala.tools.nsc.MainGenericRunner$$anonfun$runTarget$1$1.apply(MainGenericRunner.scala:62)
at scala.tools.nsc.MainGenericRunner$$anonfun$runTarget$1$1.apply(MainGenericRunner.scala:62)
at scala.Option.getOrElse(Option.scala:108)
at scala.tools.nsc.MainGenericRunner.runTarget$1(MainGenericRunner.scala:62)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:80)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:89)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)
If I follow this same procedure on Windows, the program executes just fine. How do I fix this?
Upvotes: 0
Views: 1049
Reputation: 20285
Scala can't find the main class because scala.jar
is not on the classpath which contains Program
. Run it with scala -cp scala.jar Program
to set up the classpath and call the main in Program.
Upvotes: 1