Kon*_*tov 13 java architecture maven
我想确保我的项目不包含包之间不必要的依赖项.例如,我想确保项目具有分层结构.即模型低于一切,业务逻辑依赖于模型,视图依赖于业务逻辑和模型.每个层都放在自己的包中.
你能推荐一些优选的开源工具,它允许我指定这些约束并将它们作为持续集成的一部分进行检查吗?
PS我知道我可以在单独的maven模块中分离项目.不幸的是,我的真实案例比3层系统更复杂.如果我使用maven模块,我会有几十个非常小的模块.
Structure101允许您将层直观地定义为架构图中的单元格,映射到物理代码并检查一致性。这些图表在开发人员的 IDE 中可见,如果违反分层规则,则会生成编辑时警告。也可以在 CI 期间中断/报告构建。SonarJ和Lattix是用于视觉依赖性控制的其他工具。