refactor-first
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.hjug.refactorfirst</groupId> <artifactId>refactor-first</artifactId> <version>0.7.1</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.hjug.refactorfirst</groupId> <artifactId>refactor-first</artifactId> <version>0.7.1</version> <packaging>pom</packaging> <url>https://github.com/refactorfirst/RefactorFirst</url> <name>RefactorFirst</name> <description> Plugin that identifies God classes in a codebase and suggests which classes should be refactored first. Generates a graph and a table providing (hopefully) easy to understand guidance. Can be used via command line, as a build plugin, or as a report plugin. </description> <licenses> <license> <name>Apache License 2.0</name> <url>http://www.apache.org/licenses/</url> <distribution>repo</distribution> </license> </licenses> <developers> <developer> <name>Jim Bethancourt</name> <email>jimbethancourt@gmail.com</email> <organization>Houston Java Users Group</organization> <organizationUrl>http://www.hjug.org</organizationUrl> <roles> <role>developer</role> </roles> <timezone>CST</timezone> </developer> </developers> <scm> <connection>scm:git:https://github.com/refactorfirst/RefactorFirst</connection> <developerConnection>scm:git:https://github.com/refactorfirst/RefactorFirst</developerConnection> <url>https://github.com/refactorfirst/RefactorFirst</url> <tag>refactor-first-0.7.1</tag> </scm> <issueManagement> <system>GitHub</system> <url>https://github.com/refactorfirst/RefactorFirst/issues</url> </issueManagement> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <!--Compiler plugins--> <!--<errorprone.version>2.22.0</errorprone.version>--> <lombok.version>1.18.36</lombok.version> <sonar.projectKey>jimbethancourt_RefactorFirst</sonar.projectKey> <sonar.moduleKey>${project.artifactId}</sonar.moduleKey> <sonar.organization>jimbethancourt-github</sonar.organization> <sonar.host.url>https://sonarcloud.io</sonar.host.url> <maven.core.version>3.9.9</maven.core.version> </properties> <modules> <module>test-resources</module> <module>codebase-graph-builder</module> <module>dsm</module> <module>change-proneness-ranker</module> <module>effort-ranker</module> <module>cost-benefit-calculator</module> <module>graph-data-generator</module> <module>refactor-first-maven-plugin</module> <!--<module>refactor-first-gradle-plugin</module>--> <module>coverage</module> <module>report</module> <module>cli</module> </modules> <dependencyManagement> <dependencies> <dependency> <groupId>org.hjug.refactorfirst.changepronenessranker</groupId> <artifactId>change-proneness-ranker</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.effortranker</groupId> <artifactId>effort-ranker</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.dsm</groupId> <artifactId>dsm</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.costbenefitcalculator</groupId> <artifactId>cost-benefit-calculator</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.graphdatagenerator</groupId> <artifactId>graph-data-generator</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.plugin</groupId> <artifactId>refactor-first-maven-plugin</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.report</groupId> <artifactId>report</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.hjug.refactorfirst.testresources</groupId> <artifactId>test-resources</artifactId> <version>${project.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.hjug.refactorfirst.codebasegraphbuilder</groupId> <artifactId>codebase-graph-builder</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.eclipse.jgit</groupId> <artifactId>org.eclipse.jgit</artifactId> <version>6.10.0.202406032230-r</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.jgrapht</groupId> <artifactId>jgrapht-core</artifactId> <version>1.5.2</version> </dependency> <dependency> <groupId>org.jgrapht</groupId> <artifactId>jgrapht-opt</artifactId> <version>1.5.2</version> </dependency> <dependency> <groupId>in.wilsonl.minifyhtml</groupId> <artifactId>minify-html</artifactId> <version>0.15.0</version> </dependency> <dependency> <groupId>net.sourceforge.pmd</groupId> <artifactId>pmd-java</artifactId> <version>7.0.0-rc4</version> <scope>compile</scope> <exclusions> <exclusion> <groupId>com.beust</groupId> <artifactId>jcommander</artifactId> </exclusion> <!-- Done to accommodate unknown license issue specified in https://github.com/jimbethancourt/RefactorFirst/issues/2 --> <exclusion> <groupId>net.sourceforge.saxon</groupId> <artifactId>saxon</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.18.3</version> </dependency> <!-- Needed to suppress CVE-2023-2976--> <!-- Guava 33.2.1-jre is used by maven-core --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>33.4.0-jre</version> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-core</artifactId> <version>${maven.core.version}</version> <exclusions> <exclusion> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </exclusion> </exclusions> </dependency> <!-- <dependency> <groupId>com.github.mauricioaniche</groupId> <artifactId>ck</artifactId> <version>0.6.2</version> </dependency> --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>2.0.17</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.17</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>3.4.4</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <version>5.9.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <version>5.9.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> <optional>true</optional> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <compilerArgs> <arg>-XDcompilePolicy=simple</arg> <!--<arg>-Xplugin:ErrorProne</arg>--> </compilerArgs> <annotationProcessorPaths> <path> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> </path> <!--<path> <groupId>com.google.errorprone</groupId> <artifactId>error_prone_core</artifactId> <version>${errorprone.version}</version> </path>--> </annotationProcessorPaths> <release>11</release> </configuration> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.8.8</version> <executions> <!-- to avoid bugs in some situations --> <execution> <id>default-prepare-agent</id> <goals> <goal>prepare-agent</goal> </goals> </execution> <!-- create report during maven verify phase --> <execution> <id>report</id> <phase>verify</phase> <goals> <goal>report</goal> </goals> </execution> <execution> <id>csvreport</id> <phase>verify</phase> <goals> <goal>report</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.pitest</groupId> <artifactId>pitest-maven</artifactId> <version>1.16.1</version> <dependencies> <dependency> <groupId>org.pitest</groupId> <artifactId>pitest-junit5-plugin</artifactId> <version>1.2.1</version> </dependency> </dependencies> </plugin> <!-- From https://mkyong.com/maven/mvn-site-java-lang-classnotfoundexception-org-apache-maven-doxia-siterenderer-documentcontent/--> <!--Needed to allow mvn site to work--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.7.1</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> <version>3.0.0</version> </plugin> <!-- Security checks --> <plugin> <groupId>com.github.spotbugs</groupId> <artifactId>spotbugs-maven-plugin</artifactId> <version>4.9.2.0</version> <dependencies> <dependency> <groupId>com.github.spotbugs</groupId> <artifactId>spotbugs</artifactId> <version>4.9.3</version> </dependency> </dependencies> <configuration> <effort>Max</effort> <threshold>Low</threshold> <failOnError>true</failOnError> <!--<includeFilterFile>${session.executionRootDirectory}/spotbugs-security-include.xml</includeFilterFile> <excludeFilterFile>${session.executionRootDirectory}/spotbugs-security-exclude.xml</excludeFilterFile>--> <plugins> <plugin> <groupId>com.h3xstream.findsecbugs</groupId> <artifactId>findsecbugs-plugin</artifactId> <version>1.13.0</version> </plugin> </plugins> </configuration> <!-- Uncomment the executions declaration below to fail the build when violations are found--> <!-- <executions> <execution> <goals> <goal>check</goal> </goals> </execution> </executions> --> </plugin> <!--TODO: Add the SNYK plugin--> <!-- https://github.com/snyk/snyk-maven-plugin --> <plugin> <groupId>com.diffplug.spotless</groupId> <artifactId>spotless-maven-plugin</artifactId> <version>2.30.0</version> <configuration> <formats> <!-- you can define as many formats as you want, each is independent --> <format> <!-- define the files to apply to --> <includes> <include>*.java</include> </includes> <!-- define the steps to apply to those files --> <trimTrailingWhitespace /> <endWithNewline /> <indent> <tabs>true</tabs> <spacesPerTab>4</spacesPerTab> </indent> </format> </formats> <java> <palantirJavaFormat /> </java> </configuration> <executions> <execution> <goals> <goal>apply</goal> </goals> <phase>initialize</phase> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>local</id> <build> <plugins> <plugin> <groupId>org.owasp</groupId> <artifactId>dependency-check-maven</artifactId> <version>12.1.0</version> <configuration> <failBuildOnCVSS>8.0</failBuildOnCVSS> </configuration> <executions> <execution> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>snapshot-release</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>2.5.3</version> <configuration> <stagingRepository>https://oss.sonatype.org/content/repositories/snapshots/ </stagingRepository> </configuration> </plugin> </plugins> </build> <distributionManagement> <snapshotRepository> <id>ossrh</id> <url>https://oss.sonatype.org/content/repositories/snapshots</url> </snapshotRepository> </distributionManagement> </profile> <profile> <id>publish</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.0.1</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <!--See http://maven.apache.org/plugins/maven-gpg-plugin/usage.html--> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> <version>1.6</version> <executions> <execution> <id>sign-artifacts</id> <phase>verify</phase> <goals> <goal>sign</goal> </goals> <configuration> <!-- Prevent 'gpg' from using pinentry programs --> <gpgArguments> <arg>--pinentry-mode</arg> <arg>loopback</arg> </gpgArguments> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <version>1.6.8</version> <extensions>true</extensions> <configuration> <serverId>ossrh</serverId> <nexusUrl>https://oss.sonatype.org/</nexusUrl> <autoReleaseAfterClose>true</autoReleaseAfterClose> </configuration> </plugin> </plugins> </build> <distributionManagement> <repository> <id>ossrh</id> <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> </repository> <snapshotRepository> <id>ossrh</id> <url>https://oss.sonatype.org/content/repositories/snapshots</url> </snapshotRepository> </distributionManagement> </profile> </profiles> </project>