Dav*_*Far 1 java architecture dependencies jdepend package
如果没有P1的类和接口使用P2,在什么情况下包P1和P2之间会有依赖循环?即"隐藏的依赖"来自何处?
jdepend说我在stsimulator和之间有一个包依赖stsimulator.ststraversal,但没有stsimulator使用任何类的部分或接口stsimulator.ststraversal,这意味着
stsimulator都不导入stsimuator.*也不使用字符串"ststraversal".怎么可能?
--------------------------------------------------
- Package Dependency Cycles:
--------------------------------------------------
stsimulator
|
| stsimulator.ststraversal
|-> stsimulator
stsimulator.sts
|
| stsimulator.interpreter.javacc
|-> stsimulator
| stsimulator.ststraversal
|-> stsimulator
stsimulator.ststraversal
|
| stsimulator
|-> stsimulator.ststraversal
Run Code Online (Sandbox Code Playgroud)
同样的事情发生在我们身上.方案如下:
我们在相同的包结构中但在不同的源目录中有测试类.实际代码和测试代码都被编译到同一个输出目录中(除非你另有说明,否则这是Eclipse中的默认值,我认为).由于JDepend不分析源代码而是分析编译代码,因此我们的测试类不小心引入了包之间的幻像依赖关系.
| 归档时间: |
|
| 查看次数: |
613 次 |
| 最近记录: |