I was thinking that it would be nice with a maven plugin that bans circular package dependencies. Looked around and didn't find anything.
Let me try to define the problem:
Package dependency: There exists code in package A that references code from package B. Package A depends on package B.
A -> B
Circular package dependency: There exists dependencies between packages so that the dependency graph of packages within a project forms a cyclic graph.
A -> B -> A
What I want the plugin to do, in a best effort manner, is to enforce that the package dependency graph is acyclic (it has to be a directed acyclic graph). It's fine if it misses reflective code and such that is hard to analyze.
Anyone know of such a plugin, or maybe library.. that does this?
Thanks!