()
| 32 | } |
| 33 | |
| 34 | func main() { |
| 35 | |
| 36 | projectDir := "../../test/java/9" |
| 37 | |
| 38 | // find pom files |
| 39 | var poms []*java.Pom |
| 40 | filepath.WalkDir(projectDir, func(path string, d fs.DirEntry, err error) error { |
| 41 | if !strings.HasSuffix(path, "pom.xml") { |
| 42 | return nil |
| 43 | } |
| 44 | pomfile := model.NewFile(path, strings.TrimPrefix(path, projectDir)) |
| 45 | pomfile.OpenReader(func(reader io.Reader) { |
| 46 | pom := java.ReadPom(reader) |
| 47 | pom.File = pomfile |
| 48 | poms = append(poms, pom) |
| 49 | }) |
| 50 | return nil |
| 51 | }) |
| 52 | |
| 53 | // pure static parse pom |
| 54 | java.ParsePoms(context.TODO(), poms, nil, func(pom *java.Pom, root *model.DepGraph) { |
| 55 | |
| 56 | logs.Infof("file %s dep track:", pom.File.Relpath()) |
| 57 | root.ForEachNode(func(p, n *model.DepGraph) bool { |
| 58 | logs.Info(n.Expand.(*java.Pom).PomDependency.ImportPathStack()) |
| 59 | return true |
| 60 | }) |
| 61 | |
| 62 | root.Build(false, model.Lan_Java) |
| 63 | logs.Infof("file %s dep tree:\n%s", pom.File.Relpath(), root.Tree(false, false)) |
| 64 | |
| 65 | }) |
| 66 | } |
nothing calls this directly
no test coverage detected