Dependencies Structure Matrix
IntelliJ IDEA 7 introduces the revolutionary approach to analyzing the dependencies between project classes — the Dependency Structure Matrix (DSM).
DSM was designed to help analyzing the structure of complex projects, with thousands of Java classes. DSM reflects the real dependencies between classes in a project, showing them sorted in a way that lets you get the overall picture at a glance, and then perform a deep drill-down in just few clicks.
You can quickly focus on any part of the project, to find cyclic dependencies, unused classes and so on. DSM is integrated with advanced code navigation so and enables you to jump directly to the code which requires your attention. A rich set of code refactorings is provided for resolving the problems.
- The selection highlights classes which dependencies are being viewed.
- The ellipsis in cell indicates there are more than 99 dependencies between maven-core and maven-project.
- The column shows the dependencies of the selected row.
- The row shows the dependencies on the selected row.
- Cell indicates that maven-project has 16 dependencies on maven-settings.
- More dependencies - brighter color.
Automatic cyclic dependency detection
Multiple cross-class dependencies can be analyzed in one view
Find usages and with navigation integrated for one-click jumping to the underlying code
Analysis of modules, packages, and classes dependencies
Choose a code piece to analyze (module, package, or even class), and view on what libraries and classes it depends on. With the help of the Dependency Viewer, you can find not only general information about dependencies, but also the certain lines of code where the dependency is established. Read more about dependencies analysis »
Illegal dependencies elimination
You can avoid illegal dependencies in your code by setting up dependencies rules. In this case, the Dependency viewer will highlight illegal dependencies. Moreover, you will get notifications about dependencies rules violation right in the editor. Read more about dependencies rules »
Backward and cyclic dependencies location
IntelliJ IDEA is also capable of analyzing backward and cyclic dependencies. Code analysis can be performed for a separate file, directory, package, module, or entire project.