Compiling Scala sources

Prerequis : common usages


Place scala sources files in :


Place scala test sources files in :


Then use the standard maven phases :

# compile only
mvn compile
# or compile and test
mvn test
# or compile, test and package
mvn package

Or the plugin specifics goal :

# compile source
mvn scala:compile
# compile test
mvn scala:testCompile

Or if you want to compile only source (from main and test) without calling previous phases like check resources, generate-sources,... :

# compile source and test with fsc
mvn scala:cc -Donce=true
# compile source and test with scalac
mvn scala:cc -Donce=true -Dfsc=false
  • This feature is provide for integration with editor.
  • using once and fsc => reuse server if previously started else start a new one but never stop it (except if you call scala:cc without -Donce=true, or if you kill the process yourself)

Increasing memory


Emacs user

If you are an emacs user, you could try the to run the compilation with "-DemacsMode=true" then compilation error will be displayed without [WARNING] at the begin of the line like :

[INFO] Compiling 1 source files to /home/dwayne/work/oss/scala-tools/vscaladoc/target/classes
[WARNING] Compilation failure

/project/src/main/scala/org/example/Main.scala:12: error: expected class or object definition
one error found