Package com.sap.cds.maven.plugin.build
Class VersionMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
com.sap.cds.maven.plugin.AbstractCdsMojo
com.sap.cds.maven.plugin.build.VersionMojo
- All Implemented Interfaces:
CdsMojoLogger,org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
@Mojo(name="version",
defaultPhase=GENERATE_SOURCES,
aggregator=true)
public class VersionMojo
extends AbstractCdsMojo
Prints detailed version information about the CAP Java project on the console.
Call
This goal shows the following version information about the CAP Java project and build environment:
Call
cds:version or mvn com.sap.cds:cds-maven-plugin:version to get detailed version information.This goal shows the following version information about the CAP Java project and build environment:
- version of CAP Java SDK including CDS4J
- console output of command line
cds version - version and location of Apache Maven
- version and location of Java runtime
- OS information
- Since:
- 1.19.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected static final Stringprotected org.eclipse.aether.RepositorySystemSessionDefines settings and components that control the repository system.Fields inherited from class com.sap.cds.maven.plugin.AbstractCdsMojo
buildContext, CDS_SERVICES_GROUPID, mojoExecution, PLUGIN_KEY, project, session, settingsFields inherited from interface org.apache.maven.plugin.Mojo
ROLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidexecute()protected voidexecute(File workDir, File execFile, OutputStream outputStream, Map<String, String> additionalEnv, int[] exitValues, String... args) Executes a program as child process.protected voidexecuteCds(File workDir, String args, OutputStream output, Map<String, String> additionalEnv) Executes a cds command with given arguments in given working directory.protected StringExecutes commandcds versionand returns console output.protected FileFinds the cds working directory by going upwards and looking for a .cdsrc.json file.protected FilevoidsetNpxExec(File npxExec) Gets called to inject parameter "npxExec".Methods inherited from class com.sap.cds.maven.plugin.AbstractCdsMojo
ensureCliExecuted, findGoalExecution, findSrvProject, getReactorBaseDirectory, isCliExecuted, logDebug, logDebug, logError, logError, logError, logInfo, logWarn, logWarn, logWarn, scanDirectory, setProperty, strongMethods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
PROP_NODE_DIR
- See Also:
-
PROP_NODE_EXECUTABLE
- See Also:
-
PROP_NPM_EXECUTABLE
- See Also:
-
PROP_NPX_EXECUTABLE
- See Also:
-
PARAM_NODE_DIR
- See Also:
-
PARAM_NPX_EXECUTABLE
- See Also:
-
PARAM_NPM_EXECUTABLE
- See Also:
-
repositorySystemSession
@Parameter(defaultValue="${repositorySystemSession}", required=true, readonly=true) protected org.eclipse.aether.RepositorySystemSession repositorySystemSessionDefines settings and components that control the repository system.
-
-
Constructor Details
-
VersionMojo
public VersionMojo()
-
-
Method Details
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException- Throws:
org.apache.maven.plugin.MojoExecutionException
-
executeCdsVersion
Executes commandcds versionand returns console output.- Returns:
- the console output of the
cds versioncommand
-
setNpxExec
Gets called to inject parameter "npxExec".- Parameters:
npxExec- aFilepointing to npx executable
-
executeCds
protected void executeCds(File workDir, String args, OutputStream output, Map<String, String> additionalEnv) throws IOExceptionExecutes a cds command with given arguments in given working directory.- Parameters:
workDir- the working directory to useargs- the cds command line argumentsoutput- an optionalOutputStream- Throws:
org.apache.commons.exec.ExecuteException- if CDS execution failed with an errorIOException- if an I/O error occurred
-
getWorkingDirectory
-
execute
protected void execute(File workDir, File execFile, OutputStream outputStream, Map<String, String> additionalEnv, int[] exitValues, String... args) throws IOExceptionExecutes a program as child process.- Parameters:
workDir- the working directory of child processexecFile- the executable to useoutputStream- an optional standard output streamadditionalEnv- additional environment variables, can benullexitValues- an optional list with exit values of the process to be considered successful, can benullargs- an optional command line arguments passed to the process- Throws:
IOException- if an I/O exception occurredorg.apache.commons.exec.ExecuteException- if process execution failed
-
findCdsWorkingDir
Finds the cds working directory by going upwards and looking for a .cdsrc.json file. It stops at the top-most project directory.- Returns:
- the cds working directory or
nullif not found.
-