All my programming life I have been thinking that the cyclic dependency is the following:
GIVEN
IF
THEN
Project contains cyclic dependency package1 > package2 > package3 > package1.
This was a pretty huge surprise when Intellij's dependency viewer told me, that:
IF
THEN
Project contains cyclic dependency package1 > package2 > package3 > package1.
Could anybody, please, explain me what is the strict definition for cyclic dependency and why does Intellij show such weird results? Thanks.
The dependencies are transitive, so by virtue of depending on subpackage2 which in turn depends on package3, package2 itself depends on package3, thus forming the exact same graph as example 1. I'm more surprised other tools don't see it as a circle, as IntelliJ is correct here.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With