New Maven plugins for simpler architecture management
German IT service provider andrena objects has released two new Apache Maven plugins that are intended to simplify architecture management for software projects. The first plugin, NoPackageCyclesEnforcerRule, developed with JDepend, automatically recognises cyclical dependencies between classes from different packages. Such package cycles are best avoided, as otherwise the packages involved cannot be considered separately from each other, which negates the modularity that is the whole point of packages in the first place.
Macker, the second plugin, allows specific dependencies between packages to be defined and those rules to be automatically verified. The plugin is the result of observations by the company that targets for dependencies between packages set at the beginning of a project are often not met. Macker is a fork of software of the same name from Codehaus that hasn't been updated since 2003. The forked plugin from andrena objects has been adapted to current versions of Java.
Both plugins are available from the company's GitHub page under unspecified licence terms.