Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Running a Scala app as a Java app

Tags:

scala

I'm trying to run the following rocket launching application:

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

directly from java like this:

java -cp scala-library.jar HelloWorld

(obviously after compliling with scala)

but get the following error:

Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
Caused by: java.lang.ClassNotFoundException: HelloWorld
        at java.net.URLClassLoader$1.run(Unknown Source)
(...)
Could not find the main class: HelloWorld.  Program will exit.

Have I overseen anything trivial that I need to do to make it work?

like image 268
Knut Arne Vedaa Avatar asked Aug 15 '10 13:08

Knut Arne Vedaa


1 Answers

From the Java documentation:

The default class path is the current directory. Setting the CLASSPATH variable or using the -classpath command-line option overrides that default, so if you want to include the current directory in the search path, you must include "." in the new settings.

Adding .: (or .; on Windows) to the beginning of your classpath should work.

like image 178
Travis Brown Avatar answered Oct 29 '22 16:10

Travis Brown