Class AbstractBuildinfoMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.apache.maven.plugins.artifact.buildinfo.AbstractBuildinfoMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
BuildinfoMojo,CompareMojo,DescribeBuildOutputMojo
public abstract class AbstractBuildinfoMojo
extends org.apache.maven.plugin.AbstractMojo
Base buildinfo-generating class, for goals related to Reproducible Builds
.buildinfo files.- Since:
- 3.2.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected FileLocation of the generated buildinfo file.protected StringTimestamp for reproducible output archive entries, either formatted as ISO 8601yyyy-MM-dd'T'HH:mm:ssXXXor as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).protected final org.apache.maven.project.MavenProjectThe Maven project.protected final org.apache.maven.rtinfo.RuntimeInformationprotected final org.apache.maven.execution.MavenSessionThe current build session instance.Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractBuildinfoMojo(org.apache.maven.toolchain.ToolchainManager toolchainManager, org.apache.maven.rtinfo.RuntimeInformation rtInformation, org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession session) -
Method Summary
Modifier and TypeMethodDescriptionprotected FilecopyAggregateToRoot(File aggregate) voidexecute()generateBuildinfo(boolean mono) Generate buildinfo file.protected org.apache.maven.project.MavenProjectprotected booleanisSkip(org.apache.maven.project.MavenProject project) protected booleanisSkipModule(org.apache.maven.project.MavenProject project) protected org.apache.maven.plugins.artifact.buildinfo.BuildInfoWriternewBuildInfoWriter(PrintWriter p, boolean mono) protected Stringprotected voidskip(org.apache.maven.project.MavenProject last) Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
buildinfoFile
@Parameter(defaultValue="${project.build.directory}/${project.artifactId}-${project.version}.buildinfo", required=true, readonly=true) protected File buildinfoFileLocation of the generated buildinfo file. -
outputTimestamp
Timestamp for reproducible output archive entries, either formatted as ISO 8601yyyy-MM-dd'T'HH:mm:ssXXXor as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).- Since:
- 3.2.0
-
rtInformation
protected final org.apache.maven.rtinfo.RuntimeInformation rtInformation -
project
protected final org.apache.maven.project.MavenProject projectThe Maven project. -
session
protected final org.apache.maven.execution.MavenSession sessionThe current build session instance. This is used for toolchain manager API calls.
-
-
Constructor Details
-
AbstractBuildinfoMojo
protected AbstractBuildinfoMojo(org.apache.maven.toolchain.ToolchainManager toolchainManager, org.apache.maven.rtinfo.RuntimeInformation rtInformation, org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession session)
-
-
Method Details
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException- Throws:
org.apache.maven.plugin.MojoExecutionException
-
skip
protected void skip(org.apache.maven.project.MavenProject last) throws org.apache.maven.plugin.MojoExecutionException - Throws:
org.apache.maven.plugin.MojoExecutionException
-
copyAggregateToRoot
protected File copyAggregateToRoot(File aggregate) throws org.apache.maven.plugin.MojoExecutionException - Throws:
org.apache.maven.plugin.MojoExecutionException
-
newBuildInfoWriter
protected org.apache.maven.plugins.artifact.buildinfo.BuildInfoWriter newBuildInfoWriter(PrintWriter p, boolean mono) -
generateBuildinfo
protected Map<org.eclipse.aether.artifact.Artifact,String> generateBuildinfo(boolean mono) throws org.apache.maven.plugin.MojoExecutionException Generate buildinfo file.- Parameters:
mono- is it a mono-module build?- Returns:
- a Map of artifacts added to the build info with their associated property key prefix
(
outputs.[#module.].#artifact) - Throws:
org.apache.maven.plugin.MojoExecutionException- if anything goes wrong
-
getLastProject
protected org.apache.maven.project.MavenProject getLastProject() -
isSkip
protected boolean isSkip(org.apache.maven.project.MavenProject project) -
isSkipModule
protected boolean isSkipModule(org.apache.maven.project.MavenProject project) -
relative
-