Intentar establecer una configuración de estilo de control personalizado en el pom maven de acuerdo con guidelines on the apache site no funciona en un caso muy simple.Maven Checkstyle configLocation ignorado?
he creado un proyecto, MiProyecto, utilizando la estructura de directorios recomendados por Maven (es decir src/main/java /, src/main/resources), un único archivo MyClass.java:
package com.myproject;
public class MyClass {
public static void main(String[] args) {
System.out.println("This line is longer than 80 characters which returns an error in sun_checks.xml, however my_checks.xml allows for much longer lines and will not return a long line error.");
}
}
un vacío Checkstyle archivo, my_checks.xml:
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
<module name="Checker">
<property name="severity" value="warning"/>
<module name="TreeWalker">
</module>
</module>
y un archivo pom de acuerdo con las especificaciones de la guía:
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.myproject</groupId>
<artifactId>A_Project</artifactId>
<name>A Project</name>
<version>1.0.0</version>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.8</version>
<configuration>
<configLocation>my_checks.xml</configLocation>
</configuration>
</plugin>
</plugins>
</reporting>
</project>
Ejecutando 'mvn -X checkstyle: checkstyle' está usando sun_checks.xml (predeterminado) en lugar de usar la configuración en el archivo my_checks.xml, que se puede ver tanto con los errores de estilo de comprobación resultantes como con la salida de depuración (ej. '[DEPURACIÓN] request.getConfigLocation() config/sun_checks.xml').
Sé que my_checks.xml es válido porque el checkstyle.config.location se puede cambiar en las propiedades utilizando la estrategia descrita por Carboni en un , pero esto causa problemas cuando se mueve a proyectos de varios módulos y difiere del 'oficial' apache maven checkstyle instrucciones.
¿Dónde está exactamente su config xml? – Corubba