java

package
v1.40.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 15, 2026 License: Apache-2.0 Imports: 44 Imported by: 5

Documentation

Overview

Package java provides a concrete Cataloger implementation for packages relating to the Java language ecosystem.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewArchiveCataloger added in v0.95.0

func NewArchiveCataloger(cfg ArchiveCatalogerConfig) pkg.Cataloger

NewArchiveCataloger returns a new Java archive cataloger object for detecting packages with archives (jar, war, ear, par, sar, jpi, hpi, and native-image formats)

func NewGradleLockfileCataloger added in v0.95.0

func NewGradleLockfileCataloger() pkg.Cataloger

NewGradleLockfileCataloger returns a cataloger capable of parsing dependencies from a gradle.lockfile file. Note: Older versions of lockfiles aren't supported yet

func NewJvmDistributionCataloger added in v1.13.0

func NewJvmDistributionCataloger() pkg.Cataloger

NewJvmDistributionCataloger returns packages representing JDK/JRE installations (of multiple distribution types).

func NewNativeImageCataloger added in v0.66.0

func NewNativeImageCataloger() pkg.Cataloger

NewNativeImageCataloger returns a new Native Image cataloger object.

func NewPomCataloger added in v0.95.0

func NewPomCataloger(cfg ArchiveCatalogerConfig) pkg.Cataloger

NewPomCataloger returns a cataloger capable of parsing dependencies from a pom.xml file. Pom files list dependencies that maybe not be locally installed yet.

Types

type ArchiveCatalogerConfig added in v0.98.0

type ArchiveCatalogerConfig struct {
	cataloging.ArchiveSearchConfig `yaml:",inline" json:"" mapstructure:",squash"`

	// 	UseNetwork enables network operations for java package metadata enrichment, such as fetching parent POMs and license information.
	// app-config: java.use-network
	UseNetwork bool `yaml:"use-network" json:"use-network" mapstructure:"use-network"`

	// UseMavenLocalRepository enables searching the local maven repository (`~/.m2/repository` by default) for parent POMs and other metadata.
	// app-config: java.use-maven-local-repository
	UseMavenLocalRepository bool `yaml:"use-maven-localrepository" json:"use-maven-localrepository" mapstructure:"use-maven-localrepository"`

	// MavenLocalRepositoryDir specifies the location of the local maven repository. When not set, defaults to `~/.m2/repository`.
	// app-config: java.maven-local-repository-dir
	MavenLocalRepositoryDir string `yaml:"maven-localrepository-dir" json:"maven-localrepository-dir" mapstructure:"maven-localrepository-dir"`

	// MavenBaseURL specifies the base URL(s) to use for fetching POMs and metadata from maven central or other repositories. When not set, defaults to `https://repo1.maven.org/maven2`.
	// app-config: java.maven-url
	MavenBaseURL string `yaml:"maven-base-url" json:"maven-base-url" mapstructure:"maven-base-url"`

	// MaxParentRecursiveDepth limits how many parent POMs will be fetched recursively before stopping. This prevents fetching excessively deep parent graphs.
	// app-config: java.max-parent-recursive-depth
	MaxParentRecursiveDepth int `yaml:"max-parent-recursive-depth" json:"max-parent-recursive-depth" mapstructure:"max-parent-recursive-depth"`

	// ResolveTransitiveDependencies enables resolving transitive dependencies for java packages found within archives.
	// app-config: java.resolve-transitive-dependencies
	ResolveTransitiveDependencies bool `yaml:"resolve-transitive-dependencies" json:"resolve-transitive-dependencies" mapstructure:"resolve-transitive-dependencies"`
}

func DefaultArchiveCatalogerConfig added in v0.98.0

func DefaultArchiveCatalogerConfig() ArchiveCatalogerConfig

func (ArchiveCatalogerConfig) WithArchiveTraversal added in v0.98.0

func (j ArchiveCatalogerConfig) WithArchiveTraversal(search cataloging.ArchiveSearchConfig, maxDepth int) ArchiveCatalogerConfig

func (ArchiveCatalogerConfig) WithMavenBaseURL added in v0.98.0

func (j ArchiveCatalogerConfig) WithMavenBaseURL(input string) ArchiveCatalogerConfig

func (ArchiveCatalogerConfig) WithMavenLocalRepositoryDir added in v1.11.0

func (j ArchiveCatalogerConfig) WithMavenLocalRepositoryDir(input string) ArchiveCatalogerConfig

func (ArchiveCatalogerConfig) WithResolveTransitiveDependencies added in v1.15.0

func (j ArchiveCatalogerConfig) WithResolveTransitiveDependencies(resolveTransitiveDependencies bool) ArchiveCatalogerConfig

func (ArchiveCatalogerConfig) WithUseMavenLocalRepository added in v1.11.0

func (j ArchiveCatalogerConfig) WithUseMavenLocalRepository(input bool) ArchiveCatalogerConfig

func (ArchiveCatalogerConfig) WithUseNetwork added in v0.98.0

func (j ArchiveCatalogerConfig) WithUseNetwork(input bool) ArchiveCatalogerConfig

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL