artifact:compare
Full name:
org.apache.maven.plugins:maven-artifact-plugin:3.6.1:compare
Description:
Compare current build output (from package) against reference either previously install-ed or downloaded from a remote repository: comparison results go to .buildcompare file.
Attributes:
- Requires a Maven project to be executed.
- The goal is not marked as thread-safe and thus does not support parallel builds.
- Since version:
3.2.0.
Optional Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<aggregateOnly> |
boolean |
3.2.0 |
Compare aggregate only (ie wait for the last module) or also compare on each module. Default: falseUser Property: compare.aggregate.only |
<detectSkip> |
boolean |
- |
Auto-detect projects/modules with install or deploy skipped: avoid taking fingerprints. If auto-detection gives unexpected results, prefer handwritten skipModules.Default: trueUser Property: buildinfo.detect.skip |
<diagnose> |
boolean |
3.5.2 |
Diagnose outputTimestamp effective value based on execution context.Default: falseUser Property: diagnose |
<fail> |
boolean |
3.5.0 |
Fail the build if differences are found against reference build. Default: trueUser Property: compare.fail |
<ignore> |
List<String> |
- |
Artifacts to ignore, specified as a glob matching against ${groupId}/${filename}, for example */*.xml. If all artifacts from a module are to be ignored, prefer skipModules.User Property: buildinfo.ignore |
<ignoreJavadoc> |
boolean |
- |
Ignore javadoc attached artifacts from buildinfo generation. Default: trueUser Property: buildinfo.ignoreJavadoc |
<outputTimestamp> |
String |
3.2.0 |
Timestamp for reproducible output archive entries, either formatted as ISO 8601 yyyy-MM-dd'T'HH:mm:ssXXX or as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).Default: ${project.build.outputTimestamp} |
<referenceRepo> |
String |
- |
Repository for reference build, containing either reference buildinfo file or reference artifacts.
Format: id or url or id::url
See also: repository definition Default: centralUser Property: reference.repo |
<reproducible> |
boolean |
3.1.0 |
Makes the generated .buildinfo file reproducible, by dropping detailed environment recording: OS will be recorded as "Windows" or "Unix", JVM version as major version only.Default: falseUser Property: buildinfo.reproducible |
<skipModules> |
List<String> |
3.5.0 |
Avoid taking fingerprints for full modules, specified as glob matching against ${groupId}/${artifactId}. For ignoring only a few files instead of full modules, see ignore.User Property: buildinfo.skipModules |
Parameter Details
<aggregateOnly>
Compare aggregate only (ie wait for the last module) or also compare on each module.
- Type:
boolean - Since:
3.2.0 - Required:
No - User Property:
compare.aggregate.only - Default:
false
<detectSkip>
Auto-detect projects/modules with install or deploy skipped: avoid taking fingerprints. If auto-detection gives unexpected results, prefer handwritten
skipModules.- Type:
boolean - Required:
No - User Property:
buildinfo.detect.skip - Default:
true
<diagnose>
Diagnose
outputTimestamp effective value based on execution context.- Type:
boolean - Since:
3.5.2 - Required:
No - User Property:
diagnose - Default:
false
<fail>
Fail the build if differences are found against reference build.
- Type:
boolean - Since:
3.5.0 - Required:
No - User Property:
compare.fail - Default:
true
<ignore>
Artifacts to ignore, specified as a glob matching against
${groupId}/${filename}, for example */*.xml. If all artifacts from a module are to be ignored, prefer skipModules.- Type:
java.util.List<java.lang.String> - Required:
No - User Property:
buildinfo.ignore
<ignoreJavadoc>
Ignore javadoc attached artifacts from buildinfo generation.
- Type:
boolean - Required:
No - User Property:
buildinfo.ignoreJavadoc - Default:
true
<outputTimestamp>
Timestamp for reproducible output archive entries, either formatted as ISO 8601
yyyy-MM-dd'T'HH:mm:ssXXX or as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).- Type:
java.lang.String - Since:
3.2.0 - Required:
No - Default:
${project.build.outputTimestamp}
<referenceRepo>
Repository for reference build, containing either reference buildinfo file or reference artifacts.
Format:
See also: repository definition
Format:
id or url or id::url
- id
- The repository id
- url
- The url of the repository
See also: repository definition
- Type:
java.lang.String - Required:
No - User Property:
reference.repo - Default:
central
<reproducible>
Makes the generated
.buildinfo file reproducible, by dropping detailed environment recording: OS will be recorded as "Windows" or "Unix", JVM version as major version only.- Type:
boolean - Since:
3.1.0 - Required:
No - User Property:
buildinfo.reproducible - Default:
false
<skipModules>
Avoid taking fingerprints for full modules, specified as glob matching against
${groupId}/${artifactId}. For ignoring only a few files instead of full modules, see ignore.- Type:
java.util.List<java.lang.String> - Since:
3.5.0 - Required:
No - User Property:
buildinfo.skipModules


