Package scala_maven
Class ScalaContinuousCompileMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
scala_maven.ScalaMojoSupport
scala_maven.ScalaSourceMojoSupport
scala_maven.ScalaCompilerSupport
scala_maven.ScalaContinuousCompileMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
ScalaContinuousTestMojo
@Mojo(name="cc",
requiresDependencyResolution=TEST)
public class ScalaContinuousCompileMojo
extends ScalaCompilerSupport
Compile the main and test scala source directory in continuous (infinite
loop). !! This is an util goal for commandline usage only (Do not use or call
it in a pom) !!!
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected File
Analysis cache file for incremental recompilation.protected File
The output directory for compilation.protected File
The main directory containing scala source for compilationprotected boolean
Define if cc should run once or in infinite loop.protected File
Analysis cache file for incremental recompilation.protected File
The directory to place test compilation output inprotected File
The directory containing test source for compilationprotected boolean
Define if fsc should be used, else scalac is used.protected boolean
Turns verbose output on.Fields inherited from class scala_maven.ScalaCompilerSupport
ALL, INCREMENTAL, MODIFIED_ONLY, recompileMode
Fields inherited from class scala_maven.ScalaSourceMojoSupport
excludes, includes, sendJavaToScalac
Fields inherited from class scala_maven.ScalaMojoSupport
addJavacArgs, addScalacArgs, args, checkMultipleScalaVersions, compilerPlugins, dependencies, displayCmd, encoding, factory, failOnMultipleScalaVersions, forceUseArgFile, fork, JAR, javacArgs, javacGenerateDebugSymbols, jvmArgs, localRepo, mavenProjectBuilder, POM, project, reactorProjects, remoteRepos, resolver, SCALA_COMPILER_ARTIFACTID, SCALA_LIBRARY_ARTIFACTID, scalaClassName, session, source, target, toolchainManager, useCanonicalPath
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final void
protected File
Analysis cache file for incremental recompilation.protected File
protected JavaMainCaller
Retrieves the list of *all* root source directories.protected void
Allows derived Mojos to do things after a compile has succesfully completed such as run test casesprivate void
Methods inherited from class scala_maven.ScalaCompilerSupport
clearCompileErrors, compile, defaultAnalysisCacheFile, defaultAnalysisDirectory, defaultTestAnalysisCacheFile, getAnalysisCacheMap, getFilesToCompile, hasCompileErrors, incrementalCompile
Methods inherited from class scala_maven.ScalaSourceMojoSupport
findSourceWithFilters, findSourceWithFilters, initFilters, normalize
Methods inherited from class scala_maven.ScalaMojoSupport
addCompilerPluginOptions, addCompilerToClasspath, addLibraryToClasspath, addToClasspath, addToClasspath, addToClasspath, addToClasspath, checkScalaVersion, execute, findScalaVersion, findVersionFromDependencies, findVersionFromPluginArtifacts, getAllDependencies, getArtifactJar, getArtifactJar, getCompilerDependencies, getCompilerJar, getCompilerPluginOptions, getDependencies, getEmptyScalaCommand, getEmptyScalaCommand, getJavacOptions, getLibraryJar, getPluginArtifactJar, getPluginArtifactJar, getScalaCommand, getScalaOptions, getScalaOrganization, isJavaSupportedByCompiler, resolveArtifactDependencies, resolveDependencyArtifacts, resolveDependencyArtifacts, scalaCompilerArtifact
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
mainOutputDir
The output directory for compilation. -
mainSourceDir
The main directory containing scala source for compilation -
testOutputDir
The directory to place test compilation output in -
testSourceDir
@Parameter(defaultValue="${project.build.testSourceDirectory}/../scala") protected File testSourceDirThe directory containing test source for compilation -
analysisCacheFile
@Parameter(property="analysisCacheFile", defaultValue="${project.build.directory}/analysis/compile") protected File analysisCacheFileAnalysis cache file for incremental recompilation. -
testAnalysisCacheFile
@Parameter(property="testAnalysisCacheFile", defaultValue="${project.build.directory}/analysis/test-compile") protected File testAnalysisCacheFileAnalysis cache file for incremental recompilation. -
useFsc
@Parameter(property="fsc", defaultValue="true") protected boolean useFscDefine if fsc should be used, else scalac is used. fsc => scala.tools.nsc.CompileClient, scalac => scala.tools.nsc.Main. -
once
@Parameter(property="once", defaultValue="false") protected boolean onceDefine if cc should run once or in infinite loop. (useful for test or working with editor) -
verbose
@Parameter(property="verbose", defaultValue="false") protected boolean verboseTurns verbose output on.
-
-
Constructor Details
-
ScalaContinuousCompileMojo
public ScalaContinuousCompileMojo()
-
-
Method Details
-
getClasspathElements
- Specified by:
getClasspathElements
in classScalaCompilerSupport
- Throws:
Exception
-
getOutputDir
- Specified by:
getOutputDir
in classScalaCompilerSupport
- Throws:
Exception
-
getSourceDirectories
Description copied from class:ScalaSourceMojoSupport
Retrieves the list of *all* root source directories. We need to pass all .java and .scala files into the scala compiler- Specified by:
getSourceDirectories
in classScalaSourceMojoSupport
- Throws:
Exception
-
getAnalysisCacheFile
Description copied from class:ScalaCompilerSupport
Analysis cache file for incremental recompilation.- Specified by:
getAnalysisCacheFile
in classScalaCompilerSupport
- Throws:
Exception
-
getScalaCommand
- Overrides:
getScalaCommand
in classScalaMojoSupport
- Throws:
Exception
-
doExecute
- Overrides:
doExecute
in classScalaCompilerSupport
- Throws:
Exception
-
postCompileActions
Allows derived Mojos to do things after a compile has succesfully completed such as run test cases- Throws:
Exception
-
startNewCompileServer
- Throws:
Exception
-