Skip to content

Latest commit

 

History

History
executable file
·
88 lines (68 loc) · 3.46 KB

README.md

File metadata and controls

executable file
·
88 lines (68 loc) · 3.46 KB

dsm-maven-plugin Coverage Status Travis

Maven plugin to create HTML report to show dependecies in DSM view.

We use Dtangler library to generate DSM matrix.

Example of report for Checkstyle project: http://checkstyle.sourceforge.net/dsm/index.html

dsm example for packages dsm example inside package

How to use plugin:

  1. Edit your pom.xml like this:
    <project>
        ...
        <reporting>
            <plugins>
                <plugin>
                    <groupId>com.github.sevntu-checkstyle</groupId>
                    <artifactId>dsm-maven-plugin</artifactId>
                    <version>2.2.0</version>
                </plugin>
                <!--  other reporting plugins  -->
            </plugins>
        </reporting>
        ...
    </project>
  1. Then execute following commands:
    mvn clean install site

Instead of install you can use compile, package or other stage, that generates class files.

DSM site part will be placed in target/site/dsm directory

  1. You can run only this plugin instead of all site plugins:
    mvn compile com.github.sevntu-checkstyle:dsm-maven-plugin:dsm
  1. Also you can use option obfuscatePackageNames, that truncates package names to more short form (com.mysite.oneproject.somemodule.package -> c.m.o.somemodule.package for example). It is switched off by default.

There are two way to use it:

a) Edit yours pom.xml and add configuration section:

     <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>

b) Run maven with -DobfuscatePackageNames=true (false)

         mvn compile com.github.sevntu-checkstyle:dsm-maven-plugin:dsm -DobfuscatePackageNames=true

If you don't use it and have long package name they will be just cutted (com.mysite.oneproject.somemodule.package -> ..project.somemodule.package)

Enjoy :)

Related projects: Eclipse Design Structure Matrix plugin