diff --git a/pkg/inventory/pckg/collector/maven/archive_parser.go b/pkg/inventory/pckg/collector/maven/archive_parser.go index fb7adb31e1ea770f244f67e5a9d3ff3a41d3e37d..5271903bff39c10d014527bd7660c12c3d1c8b60 100644 --- a/pkg/inventory/pckg/collector/maven/archive_parser.go +++ b/pkg/inventory/pckg/collector/maven/archive_parser.go @@ -30,6 +30,8 @@ var archiveFormats = []string{"**/*.jar", "**/*.war"} var sbomArchiveTempFirstDirPrefixName = "sbom-archive-" var sbomArchiveTempSecondDirName = "items" +const fileSeparator = string(os.PathSeparator) + // ArchiveParser is a parser for maven archive files type ArchiveParser struct { Embedded bool @@ -111,7 +113,8 @@ func (m *ArchiveParser) Parse(path string) ([]model.Package, error) { func modifyNestedPkgSourcePath(mainPkg *model.Package, nestedPkgs []model.Package) []model.Package { for i, pkg := range nestedPkgs { if strings.Contains(pkg.SourceLocation, sbomArchiveTempFirstDirPrefixName) && strings.Contains(pkg.SourceLocation, sbomArchiveTempSecondDirName) { - location := strings.Split(pkg.SourceLocation, "/"+sbomArchiveTempSecondDirName)[1] + split := strings.Split(pkg.SourceLocation, fileSeparator+sbomArchiveTempSecondDirName) + location := split[1] nestedPkgs[i].SourceLocation = mainPkg.SourceLocation + "!" + pkgNameRemoveEndTimestamp(location) } }