scala:compile

Full name:

org.scala-tools:maven-scala-plugin:2.14.2-SNAPSHOT:compile

Description:

Compiles a directory of Scala source. Corresponds roughly to the compile goal of the maven-compiler-plugin

Attributes:

  • Requires a Maven 2.0 project to be executed.
  • Requires dependency resolution of artifacts in scope: compile.
  • Binds by default to the lifecycle phase: compile.

Required Parameters

Name Type Since Description
displayCmd boolean - Display the command line called ? (property 'maven.scala.displayCmd' replaced by 'displayCmd')
Default value is: false.
scalaClassName String - className (FQN) of the scala tool to provide as
Default value is: scala.tools.nsc.Main.

Optional Parameters

Name Type Since Description
args String[] - compiler additionnals arguments
checkMultipleScalaVersions boolean - Check if every dependencies use the same version of scala-library.
Default value is: true.
compilerPlugins BasicArtifact[] - Compiler plugin dependencies to use when compiling. ex:
dependencies BasicArtifact[] - Additional dependencies/jar to add to classpath to run "scalaClassName" (scope and optional field not supported) ex :
   <dependencies>
     <dependency>
       <groupId>org.scala-tools</groupId>
       <artifactId>scala-compiler-addon</artifactId>
       <version>1.0-SNAPSHOT</version>
     </dependency>
   </dependencies>

excludes Set - A list of exclusion filters for the compiler. ex :
   <excludes>
     <exclude>SomeBadFile.scala</exclude>
   </excludes>

failOnMultipleScalaVersions boolean - Determines if a detection of multiple scala versions in the dependencies will cause the build to fail.
Default value is: false.
forceUseArgFile boolean - Force the use of an external ArgFile to run any forked process.
Default value is: false.
fork boolean - Forks the execution of scalac into a separate process.
Default value is: true.
includes Set - A list of inclusion filters for the compiler. ex :
   <includes>
     <include>SomeFile.scala</include>
   </includes>

jvmArgs String[] - Jvm Arguments.
notifyCompilation boolean - notifyCompilation if true then print a message "path: compiling" for each root directory or files that will be compiled. Usefull for debug, and for integration with Editor/IDE to reset markers only for compiled files.
Default value is: true.
outputDir File - The directory in which to place compilation output
recompileMode String - compilation-mode to use when sources was previously compiled and there is at least one change: "modified-only" => only modified source was recompiled (pre 2.13 behavior), "all" => every source are recompiled
Default value is: all.
scalaVersion String - Scala 's version to use. (property 'maven.scala.version' replaced by 'scala.version')
sendJavaToScalac boolean - Enables/Disables sending java source to the scala compiler.
Default value is: true.
sourceDir File - The directory which contains scala/java source files

Parameter Details

args:

compiler additionnals arguments
  • Type: java.lang.String[]
  • Required: No

checkMultipleScalaVersions:

Check if every dependencies use the same version of scala-library.
  • Type: boolean
  • Required: No
  • Expression: ${maven.scala.checkConsistency}
  • Default: true

compilerPlugins:

Compiler plugin dependencies to use when compiling. ex:
  • Type: org_scala_tools_maven.BasicArtifact[]
  • Required: No

dependencies:

Additional dependencies/jar to add to classpath to run "scalaClassName" (scope and optional field not supported) ex :
   <dependencies>
     <dependency>
       <groupId>org.scala-tools</groupId>
       <artifactId>scala-compiler-addon</artifactId>
       <version>1.0-SNAPSHOT</version>
     </dependency>
   </dependencies>
  • Type: org_scala_tools_maven.BasicArtifact[]
  • Required: No

displayCmd:

Display the command line called ? (property 'maven.scala.displayCmd' replaced by 'displayCmd')
  • Type: boolean
  • Required: Yes
  • Expression: ${displayCmd}
  • Default: false

excludes:

A list of exclusion filters for the compiler. ex :
   <excludes>
     <exclude>SomeBadFile.scala</exclude>
   </excludes>
  • Type: java.util.Set
  • Required: No

failOnMultipleScalaVersions:

Determines if a detection of multiple scala versions in the dependencies will cause the build to fail.
  • Type: boolean
  • Required: No
  • Default: false

forceUseArgFile:

Force the use of an external ArgFile to run any forked process.
  • Type: boolean
  • Required: No
  • Default: false

fork:

Forks the execution of scalac into a separate process.
  • Type: boolean
  • Required: No
  • Default: true

includes:

A list of inclusion filters for the compiler. ex :
   <includes>
     <include>SomeFile.scala</include>
   </includes>
  • Type: java.util.Set
  • Required: No

jvmArgs:

Jvm Arguments.
  • Type: java.lang.String[]
  • Required: No

notifyCompilation:

notifyCompilation if true then print a message "path: compiling" for each root directory or files that will be compiled. Usefull for debug, and for integration with Editor/IDE to reset markers only for compiled files.
  • Type: boolean
  • Required: No
  • Expression: ${notifyCompilation}
  • Default: true

outputDir:

The directory in which to place compilation output
  • Type: java.io.File
  • Required: No
  • Expression: ${project.build.outputDirectory}

recompileMode:

compilation-mode to use when sources was previously compiled and there is at least one change: "modified-only" => only modified source was recompiled (pre 2.13 behavior), "all" => every source are recompiled
  • Type: java.lang.String
  • Required: No
  • Expression: ${recompilation-mode}
  • Default: all

scalaClassName:

className (FQN) of the scala tool to provide as
  • Type: java.lang.String
  • Required: Yes
  • Expression: ${maven.scala.className}
  • Default: scala.tools.nsc.Main

scalaVersion:

Scala 's version to use. (property 'maven.scala.version' replaced by 'scala.version')
  • Type: java.lang.String
  • Required: No
  • Expression: ${scala.version}

sendJavaToScalac:

Enables/Disables sending java source to the scala compiler.
  • Type: boolean
  • Required: No
  • Default: true

sourceDir:

The directory which contains scala/java source files
  • Type: java.io.File
  • Required: No
  • Expression: ${project.build.sourceDirectory}/../scala