Package org.eolang.maven
Class CleanMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.eolang.maven.CleanMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
@Mojo(name="clean", defaultPhase=CLEAN, threadSafe=true) public class CleanMojo extends org.apache.maven.plugin.AbstractMojoImplementation of maven clean plugin, just deleting target/eo directory.- Since:
- 0.28.6
-
-
Field Summary
Fields Modifier and Type Field Description protected FilecacheEO cache directory.protected BiConsumer<org.apache.maven.model.Dependency,Path>centralThe central.protected FileclassesDirDirectory where classes are stored in target.protected booleandiscoverSelfShall we discover JAR artifacts for .EO sources?protected Set<String>excludeBinariesList of exclusion GLOB filters for finding class files.protected booleanfailOnWarningWhether we should fail on warning.protected FileforeignFile with foreign "tojos".protected StringforeignFormatFormat of "foreign" file ("json" or "csv").protected booleanignoreRuntimeAdd eo-runtime dependency to the classpath.protected booleanignoreTransitiveFail resolution process on transitive dependencies.protected booleanignoreVersionConflictsFail resolution process on conflicting dependencies.protected Set<String>includeBinariesList of inclusion GLOB filters for finding class files.protected booleanlintAsPackageWhether we should lint all the sources together as package.protected org.apache.maven.plugin.BuildPluginManagermanagerMaven plugin manager.protected booleanofflineIf we are offline and not able to download anything from the internet.protected FileoutputDirOutput.protected booleanoverWritePull again even if the .eo file is already present?protected booleanplaceBinariesThatHaveSourcesPlace only binaries that have EO sources inside jar.protected FileplacedThe path to a text file where paths of all added .class (and maybe others) files are placed.protected StringplacedFormatFormat of "placed" file ("json" or "csv").protected org.eolang.maven.TjsPlacedplacedTojosPlaced tojos.protected org.apache.maven.plugin.descriptor.PluginDescriptorpluginThe current version of eo-maven-plugin.protected org.apache.maven.project.MavenProjectprojectMaven project.protected booleanrewriteBinariesRewrite binaries in output directory or not.protected StringscopeCurrent scope (either "compile" or "test").protected org.apache.maven.execution.MavenSessionsessionMaven session.protected booleanskipLintingWhether we should skip linting at all.protected booleanskipZeroVersionsSkip artifact with the version 0.0.0.protected FilesourcesDirDirectory in which .eo files are located.protected StringtagThe Git tag to pull objects from, in objectionary.protected FiletargetDirTarget directory.protected IntegertimeoutMojo execution timeout in seconds.protected booleantrackTransformationStepsTrack optimization steps into intermediate XMIR files?protected FiletranspiledThe path to a text file where paths of generated java files per EO program.protected StringtranspiledFormatFormat of "transpiled" file ("json" or "csv").protected org.eolang.maven.TjsTranspiledtranspiledTojosCached transpiled tojos.protected booleanunrollExitErrorIf set to TRUE, the exception on exit will be printed in details to the log.protected FilexslMeasuresThe path of the file where XSL measurements (time of execution in milliseconds) will be stored.
-
Constructor Summary
Constructors Constructor Description CleanMojo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.eolang.maven.TjsForeigncompileTojos()Tojos to use, in "compile" scope only.voidexecute()Execute it.protected com.yegor256.xsline.Train<com.yegor256.xsline.Shift>measured(com.yegor256.xsline.Train<com.yegor256.xsline.Shift> train)Make a measured train from another train.protected org.eolang.maven.TjsForeignscopedTojos()Tojos to use, in my scope only.StringtoString()
-
-
-
Field Detail
-
project
@Parameter(defaultValue="${project}", readonly=true) protected org.apache.maven.project.MavenProject projectMaven project.
-
session
@Parameter(defaultValue="${session}", readonly=true) protected org.apache.maven.execution.MavenSession sessionMaven session.
-
manager
@Component protected org.apache.maven.plugin.BuildPluginManager manager
Maven plugin manager.
-
classesDir
@Parameter(defaultValue="${project.build.directory}/classes", readonly=true, required=true) protected File classesDirDirectory where classes are stored in target.
-
foreign
@Parameter(property="eo.foreign", required=true, defaultValue="${project.build.directory}/eo-foreign.json") protected File foreignFile with foreign "tojos".
-
foreignFormat
@Parameter(property="eo.foreignFormat", required=true, defaultValue="csv") protected String foreignFormatFormat of "foreign" file ("json" or "csv").
-
sourcesDir
@Parameter(property="eo.sourcesDir", required=true, defaultValue="${project.basedir}/src/main/eo") protected File sourcesDirDirectory in which .eo files are located.
-
targetDir
@Parameter(property="eo.targetDir", required=true, defaultValue="${project.build.directory}/eo") protected File targetDirTarget directory.
-
outputDir
@Parameter(property="eo.outputDir", required=true, defaultValue="${project.build.outputDirectory}") protected File outputDirOutput.
-
scope
@Parameter(property="eo.scope") protected String scope
Current scope (either "compile" or "test").
-
placed
@Parameter(property="eo.placed", required=true, defaultValue="${project.build.directory}/eo-placed.json") protected File placedThe path to a text file where paths of all added .class (and maybe others) files are placed.- Since:
- 0.11.0
-
placedFormat
@Parameter(property="eo.placedFormat", required=true, defaultValue="json") protected String placedFormatFormat of "placed" file ("json" or "csv").
-
transpiled
@Parameter(property="eo.transpiled", required=true, defaultValue="${project.build.directory}/eo-transpiled.json") protected File transpiledThe path to a text file where paths of generated java files per EO program.- Since:
- 0.11.0
-
xslMeasures
@Parameter(property="eo.xslMeasuresFile", required=true, defaultValue="${project.build.directory}/eo/xsl-measures.json") protected File xslMeasuresThe path of the file where XSL measurements (time of execution in milliseconds) will be stored.- Since:
- 0.41.0
-
timeout
@Parameter(property="eo.timeout") protected Integer timeout
Mojo execution timeout in seconds.- Since:
- 0.28.12
-
transpiledFormat
@Parameter(property="eo.transpiledFormat", required=true, defaultValue="csv") protected String transpiledFormatFormat of "transpiled" file ("json" or "csv").
-
trackTransformationSteps
@Parameter(property="eo.trackTransformationSteps", required=true, defaultValue="false") protected boolean trackTransformationStepsTrack optimization steps into intermediate XMIR files?- Since:
- 0.24.0
-
unrollExitError
@Parameter(property="eo.unrollExitError") protected boolean unrollExitError
If set to TRUE, the exception on exit will be printed in details to the log.- Since:
- 0.29.0
-
cache
@Parameter(property="eo.cache") protected File cache
EO cache directory.
-
rewriteBinaries
@Parameter(property="eo.rewriteBinaries", defaultValue="true") protected boolean rewriteBinariesRewrite binaries in output directory or not.- Since:
- 0.32.0
-
offline
@Parameter(property="eo.offline", required=true, defaultValue="false") protected boolean offlineIf we are offline and not able to download anything from the internet.- Since:
- 0.32.0
-
tag
@Parameter(property="eo.tag", required=true, defaultValue="master") protected String tagThe Git tag to pull objects from, in objectionary.- Since:
- 0.21.0
-
overWrite
@Parameter(property="eo.overWrite", required=true, defaultValue="false") protected boolean overWritePull again even if the .eo file is already present?- Since:
- 0.10.0
-
skipZeroVersions
@Parameter(property="eo.skipZeroVersions", required=true, defaultValue="true") protected boolean skipZeroVersionsSkip artifact with the version 0.0.0.- Since:
- 0.9.0
-
placeBinariesThatHaveSources
@Parameter protected boolean placeBinariesThatHaveSources
Place only binaries that have EO sources inside jar.- Since:
- 0.31
-
ignoreVersionConflicts
@Parameter(property="eo.ignoreVersionConflicts", required=true, defaultValue="false") protected boolean ignoreVersionConflictsFail resolution process on conflicting dependencies.- Since:
- 0.1.0
-
discoverSelf
@Parameter(property="eo.discoverSelf", required=true, defaultValue="false") protected boolean discoverSelfShall we discover JAR artifacts for .EO sources?- Since:
- 0.12.0
-
includeBinaries
@Parameter protected Set<String> includeBinaries
List of inclusion GLOB filters for finding class files.- Since:
- 0.15
-
excludeBinaries
@Parameter protected Set<String> excludeBinaries
List of exclusion GLOB filters for finding class files.- Since:
- 0.15
-
ignoreRuntime
@Parameter(property="eo.ignoreRuntime", required=true, defaultValue="false") protected boolean ignoreRuntimeAdd eo-runtime dependency to the classpath.That property is useful only for eo-runtime library compilation. When you compile eo-runtime, you don't want to add eo-runtime from foreign sources (since you compile an eo-runtime library and classpath will anyway have all required classes) and in this case, you should set this property to true. In any other cases, the eo-runtime dependency will be downloaded and added to the classpath automatically.
-
ignoreTransitive
@Parameter(property="eo.ignoreTransitive", required=true, defaultValue="false") protected boolean ignoreTransitiveFail resolution process on transitive dependencies.
-
failOnWarning
@Parameter(property="eo.failOnWarning", required=true, defaultValue="true") protected boolean failOnWarningWhether we should fail on warning.
-
lintAsPackage
@Parameter(property="eo.lintAsPackage", required=true, defaultValue="true") protected boolean lintAsPackageWhether we should lint all the sources together as package.
-
skipLinting
@Parameter(property="eo.skipLinting", required=true, defaultValue="false") protected boolean skipLintingWhether we should skip linting at all.
-
plugin
@Parameter(defaultValue="${plugin}", readonly=true) protected org.apache.maven.plugin.descriptor.PluginDescriptor pluginThe current version of eo-maven-plugin. Maven 3 only. You can read more about that property here.
-
placedTojos
protected final org.eolang.maven.TjsPlaced placedTojos
Placed tojos.
-
transpiledTojos
protected final org.eolang.maven.TjsTranspiled transpiledTojos
Cached transpiled tojos.
-
central
protected BiConsumer<org.apache.maven.model.Dependency,Path> central
The central.
-
-
Method Detail
-
execute
public final void execute() throws org.apache.maven.plugin.MojoFailureExceptionExecute it.- Throws:
org.apache.maven.plugin.MojoFailureException- If fails during build
-
scopedTojos
protected final org.eolang.maven.TjsForeign scopedTojos()
Tojos to use, in my scope only.- Returns:
- Tojos to use
-
compileTojos
protected final org.eolang.maven.TjsForeign compileTojos()
Tojos to use, in "compile" scope only.- Returns:
- Tojos to use
-
measured
protected final com.yegor256.xsline.Train<com.yegor256.xsline.Shift> measured(com.yegor256.xsline.Train<com.yegor256.xsline.Shift> train)
Make a measured train from another train.- Parameters:
train- The train- Returns:
- Measured train
-
-