diff --git a/syft/pkg/cataloger/java/archive_filename.go b/syft/pkg/cataloger/java/archive_filename.go index d52409dac..f03df298c 100644 --- a/syft/pkg/cataloger/java/archive_filename.go +++ b/syft/pkg/cataloger/java/archive_filename.go @@ -113,7 +113,7 @@ func (a archiveFilename) extension() string { func (a archiveFilename) pkgType() pkg.Type { switch strings.ToLower(a.extension()) { - case "jar", "war", "ear", "lpkg": + case "jar", "war", "ear", "lpkg", "par": return pkg.JavaPkg case "jpi", "hpi": return pkg.JenkinsPluginPkg diff --git a/syft/pkg/cataloger/java/archive_filename_test.go b/syft/pkg/cataloger/java/archive_filename_test.go index dd92b6c64..03426f8ac 100644 --- a/syft/pkg/cataloger/java/archive_filename_test.go +++ b/syft/pkg/cataloger/java/archive_filename_test.go @@ -50,6 +50,13 @@ func TestExtractInfoFromJavaArchiveFilename(t *testing.T) { name: "pkg-extra-field-maven", ty: pkg.JavaPkg, }, + { + filename: "pkg-extra-field-maven-4.3.2-rc1.par", + version: "4.3.2-rc1", + extension: "par", + name: "pkg-extra-field-maven", + ty: pkg.JavaPkg, + }, { filename: "/some/path/pkg-extra-field-maven-4.3.2-rc1.jpi", version: "4.3.2-rc1", diff --git a/syft/pkg/cataloger/java/archive_parser.go b/syft/pkg/cataloger/java/archive_parser.go index 57ae0836a..7cb013a47 100644 --- a/syft/pkg/cataloger/java/archive_parser.go +++ b/syft/pkg/cataloger/java/archive_parser.go @@ -20,6 +20,7 @@ var archiveFormatGlobs = []string{ "**/*.jar", "**/*.war", "**/*.ear", + "**/*.par", "**/*.jpi", "**/*.hpi", "**/*.lpkg", // Zip-compressed package used to deploy applications diff --git a/syft/pkg/cataloger/java/cataloger.go b/syft/pkg/cataloger/java/cataloger.go index 2285c6474..036561bf8 100644 --- a/syft/pkg/cataloger/java/cataloger.go +++ b/syft/pkg/cataloger/java/cataloger.go @@ -1,5 +1,5 @@ /* -Package java provides a concrete Cataloger implementation for Java archives (jar, war, ear, jpi, hpi formats). +Package java provides a concrete Cataloger implementation for Java archives (jar, war, ear, par, jpi, hpi formats). */ package java