Class AbstractNativeMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.graalvm.buildtools.maven.AbstractNativeMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo
Direct Known Subclasses:
AbstractNativeImageMojo, AddReachabilityMetadataMojo

public abstract class AbstractNativeMojo extends org.apache.maven.plugin.AbstractMojo
  • Field Details

    • plugin

      @Parameter(defaultValue="${plugin}", readonly=true) protected org.apache.maven.plugin.descriptor.PluginDescriptor plugin
    • session

      @Parameter(defaultValue="${session}", readonly=true) protected org.apache.maven.execution.MavenSession session
    • project

      @Parameter(defaultValue="${project}", readonly=true, required=true) protected org.apache.maven.project.MavenProject project
    • reachabilityMetadataOutputDirectory

      @Parameter(defaultValue="${project.build.directory}/graalvm-reachability-metadata", required=true) protected File reachabilityMetadataOutputDirectory
    • metadataRepositoryConfiguration

      @Parameter(alias="metadataRepository") protected MetadataRepositoryConfiguration metadataRepositoryConfiguration
    • metadataRepositoryMaxRetries

      @Parameter(defaultValue="3") protected int metadataRepositoryMaxRetries
    • metadataRepositoryInitialBackoffMillis

      @Parameter(defaultValue="100") protected int metadataRepositoryInitialBackoffMillis
    • metadataRepositoryConfigurations

      protected final Set<org.graalvm.reachability.DirectoryConfiguration> metadataRepositoryConfigurations
    • metadataRepository

      protected org.graalvm.reachability.GraalVMReachabilityMetadataRepository metadataRepository
    • logger

      @Component protected org.codehaus.plexus.logging.Logger logger
    • mavenSession

      @Component protected org.apache.maven.execution.MavenSession mavenSession
    • mavenProject

      @Component protected org.apache.maven.project.MavenProject mavenProject
    • pluginManager

      @Component protected org.apache.maven.plugin.BuildPluginManager pluginManager
    • repositorySystem

      @Component protected org.eclipse.aether.RepositorySystem repositorySystem
  • Constructor Details

    • AbstractNativeMojo

      @Inject protected AbstractNativeMojo()
  • Method Details

    • isMetadataRepositoryEnabled

      protected boolean isMetadataRepositoryEnabled()
    • configureMetadataRepository

      protected void configureMetadataRepository()
    • isArtifactExcludedFromMetadataRepository

      public boolean isArtifactExcludedFromMetadataRepository(org.apache.maven.artifact.Artifact dependency)
    • maybeAddDependencyMetadata

      protected void maybeAddDependencyMetadata(org.apache.maven.artifact.Artifact dependency, Consumer<File> excludeAction)
    • getMetadataVersion

      protected Optional<String> getMetadataVersion(org.apache.maven.artifact.Artifact dependency)
    • downloadMetadata

      protected Optional<Path> downloadMetadata(URL url, Path destination)
    • unzipLocalMetadata

      protected Path unzipLocalMetadata(Path localPath, Path destination)