Class GeneratePomProperties

java.lang.Object
org.gradle.api.internal.AbstractTask
org.gradle.api.DefaultTask
org.gradle.pomproperties.GeneratePomProperties
All Implemented Interfaces:
Comparable<org.gradle.api.Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.TaskInternal, org.gradle.api.Named, org.gradle.api.plugins.ExtensionAware, org.gradle.api.Task, org.gradle.util.Configurable<org.gradle.api.Task>

@DisableCachingByDefault(because="Not worth caching") public abstract class GeneratePomProperties extends org.gradle.api.DefaultTask
Generates a Maven-style pom.properties resource so that Maven-aware tooling (SBOM generators, classpath inspectors, security scanners, IDE flows) can identify the artifact a jar belongs to.

The file is written at the Maven-canonical path META-INF/maven/<groupId>/<artifactId>/pom.properties. The groupId is used verbatim as a single path segment (dots are not turned into directories), matching Maven's own layout.

The content is deterministic — a static header comment plus the three load-bearing keys, with no timestamp — so it does not break reproducible archives.

  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.gradle.api.Task

    org.gradle.api.Task.Namer
  • Field Summary

    Fields inherited from interface org.gradle.api.Task

    TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    abstract org.gradle.api.provider.Property<String>
    The Maven artifactId, e.g.
    abstract org.gradle.api.file.DirectoryProperty
    The directory the META-INF/maven/... tree is generated into.
    abstract org.gradle.api.provider.Property<String>
    The Maven groupId, e.g.
    org.gradle.api.provider.Provider<String>
    The path of the generated file relative to the jar root, suitable as a jar entry name.
    org.gradle.api.provider.Provider<org.gradle.api.file.RegularFile>
    The generated pom.properties file itself, for consumers that need the single file rather than the whole output directory.
    abstract org.gradle.api.provider.Property<String>
    The Maven version, e.g.

    Methods inherited from class org.gradle.api.DefaultTask

    compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService

    Methods inherited from class org.gradle.api.internal.AbstractTask

    acceptServiceReferences, appendParallelSafeAction, doNotTrackState, getAsDynamicObject, getConvention, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getOnlyIf, getReasonNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, setImpliesSubProjects

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.gradle.api.Task

    doNotTrackState, getConvention, notCompatibleWithConfigurationCache
  • Constructor Details

    • GeneratePomProperties

      public GeneratePomProperties()
  • Method Details

    • getGroupId

      @Input public abstract org.gradle.api.provider.Property<String> getGroupId()
      The Maven groupId, e.g. com.example.
    • getArtifactId

      @Input public abstract org.gradle.api.provider.Property<String> getArtifactId()
      The Maven artifactId, e.g. my-library.
    • getVersion

      @Input public abstract org.gradle.api.provider.Property<String> getVersion()
      The Maven version, e.g. 1.2.3.
    • getDestinationDirectory

      @OutputDirectory public abstract org.gradle.api.file.DirectoryProperty getDestinationDirectory()
      The directory the META-INF/maven/... tree is generated into.
    • getPomPropertiesEntryPath

      @Internal public org.gradle.api.provider.Provider<String> getPomPropertiesEntryPath()
      The path of the generated file relative to the jar root, suitable as a jar entry name.
    • getPomPropertiesFile

      @Internal public org.gradle.api.provider.Provider<org.gradle.api.file.RegularFile> getPomPropertiesFile()
      The generated pom.properties file itself, for consumers that need the single file rather than the whole output directory.
    • generate

      public void generate()