Get more details at codescene.io.
I want you and your team to succeed and spend time on what really matters.
Researchers have found that classes involved in one or more dependency cycles are more prone to bugs and changes than those not involved in changes - see doi:10.1007/s11219-013-9200-8. By avoiding dependency cycles, you can avoid rework and bugs in your codebase.
Download the released self-executable jar from Maven Central. You will need Java 8 or newer to run it.
You can use the dsm-maven-plugin as part of your build:
<project>
...
<reporting>
<plugins>
<plugin>
<groupId>com.github.sevntu-checkstyle</groupId>
<artifactId>dsm-maven-plugin</artifactId>
<version>2.2.0version>
<configuration>
<obfuscatePackageNames>true</obfuscatePackageNames>
</configuration>
</plugin>
<!-- other reporting plugins -->
</plugins>
</reporting>
...
</project>
dtangler's primary features currently are:
- DSM GUI (Dependency Structure Matrix)
- DSM text-based output
- Command line dependency analyzer (primary targeted for use in automated builds)
- Support for reading dependency info from a text file
- Built in support for Java dependency analysis (jar/class folder, package, and class level)
- The user can write dependency rules and dtangler checks if the code follows the rules.