highwheel-parent

Visualise large class and package cycles

Лицензия

Лицензия

Группа

Группа

com.github.fburato
Идентификатор

Идентификатор

highwheel-parent
Последняя версия

Последняя версия

2.0
Дата

Дата

Тип

Тип

pom
Описание

Описание

highwheel-parent
Visualise large class and package cycles
Ссылка на сайт

Ссылка на сайт

http://pitest.org
Система контроля версий

Система контроля версий

https://github.com/fburato/highwheel

Скачать highwheel-parent

Имя Файла Размер
highwheel-parent-2.0.pom 6 KB
Обзор

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/com.github.fburato/highwheel-parent/ -->
<dependency>
    <groupId>com.github.fburato</groupId>
    <artifactId>highwheel-parent</artifactId>
    <version>2.0</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.fburato/highwheel-parent/
implementation 'com.github.fburato:highwheel-parent:2.0'
// https://jarcasting.com/artifacts/com.github.fburato/highwheel-parent/
implementation ("com.github.fburato:highwheel-parent:2.0")
'com.github.fburato:highwheel-parent:pom:2.0'
<dependency org="com.github.fburato" name="highwheel-parent" rev="2.0">
  <artifact name="highwheel-parent" type="pom" />
</dependency>
@Grapes(
@Grab(group='com.github.fburato', module='highwheel-parent', version='2.0')
)
libraryDependencies += "com.github.fburato" % "highwheel-parent" % "2.0"
[com.github.fburato/highwheel-parent "2.0"]

Зависимости

test (3)

Идентификатор библиотеки Тип Версия
junit : junit jar 4.12
org.mockito : mockito-all jar 1.9.0
org.easytesting : fest-assert-core jar 2.0M7

Модули Проекта

  • highwheel-model
  • highwheel-core
  • highwheel-parser
  • highwheel-maven
  • highwheel-ant
  • highwheel-bytecode
  • highwheel-maven-verification
  • highwheel-modules
  • highwheel-utils
  • highwheel-modules-cli
  • highwheel-modules-maven

Build Status

Highwheel

Highwheel is a tool to detect and visualise class and package cycles in Java code.

It differs from other tools such as

In that it generates visualisations of the detected cycles and provides much more data about the detected dependencies.

To make it easier to make headway when working with legacy code, Highwheel also breaks down large cycles into their smaller elemental sub-cycles for easier comprehension.

Cycles are detected using tarjen's algorithm.

As fixing package cycles often involves moving classes between packages highwheel also reports unit tests that look to have been left the wrong package when their testee is moved ( for maven only in latest snapshot ).

Documentation

TODO

But briefly

Maven

Analyse a single project, or a each module within a multi-module project individually.

mvn org.pitest:highwheel-maven:analyse 

Analyse a multi-module project as a single component

mvn -DparentOnly=true org.pitest:highwheel-maven:analyse 

By default assumes that your package names match your group id. If not can supply a filter using Glob syntax.

mvn -DclassFilter=com.bigcompany.* org.pitest:highwheel-maven:analyse 

All options can of course be configured in your pom.xml.

Seperate goal dumps decompiled bytecode to disk

mvn org.pitest:highwheel-bytecode:asmDump

Ant

Create a task and pass in an analysisPath and filter

<taskdef name="highwheel" classname="org.pitest.highwheel.ant.AnalyseTask" classpathref="<path to jar>"/>

<target name="highwheel" depends="compile">
  <highwheel analysisPathRef="code.path" filter="com.example.*"/>
</target>

Версии библиотеки

Версия
2.0