2013-06-26 36 views
0

是否有代码分析工具用于断言程序包依赖性/非依赖性的Java?Ant/JUnit - 如何声明程序包依赖/非依赖?

我有一个项目,其中依赖关系在两个不应该彼此了解的包之间徘徊 - 特别是后退依赖关系,这应该是单向的。

我想指定允许依赖哪对包(在哪个方向)。另外,指定不允许彼此依赖的软件包 - 或者不是两种方式 - 都会有所帮助。理想情况下,这可能会作为Ant构建和/或JUnit运行的一部分运行,并且如果引入了违反规则的新依赖项,构建失败。然后我们将这个添加到我们的CI过程中。

能够在包组的层次上指定依赖关系也很有用(例如,'web'中的所有包和子包都可以依赖于'api'或其子包中的任何包)。

的情况下,一些细节有关,我的特别项目:

  • Java版本是1.7
  • 构建过程是根据各地的Ant(如果需要的话可以升级到最新版本)
  • 测试是与JUnit(可以升级到最新版本,如果需要的话)

回答

1

您需要类似于Jdepend的解决方案。有一个例子如何use with junit

+0

谢谢。看起来不错,我会试试看。 – Paul

+0

仍然没有机会测试JDepend做我需要的东西 - 虽然它看起来会。由于它看起来不错,我还没有找到更好的选择,我已经接受了这个答案。 – Paul