Я столкнулся с ошибкой устаревшего параметра sourceDirectory
при попытке добавить стиль проверки в мой проект.
Ошибка:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:3.0.0:checkstyle (default-cli) on project my-app: An error has occurred in Checkstyle report generation.: You are using 'sourceDirectory' which has been removed from the maven-checkstyle-plugin. Please use 'sourceDirectories' and refer to the >>Major Version Upgrade to version 3.0.0<< on the plugin site. -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:3.0.0:checkstyle (default-cli) on project my-app: An error has occurred in Checkstyle report generation.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
У меня есть проект maven с загрузочной пружиной, в котором контрольный стиль не настроен. Но когда я проверил эффективный pom для того же самого, я смог увидеть следующий конфиг для checkstyle.
<?xml version="1.0" encoding="UTF-8"?>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.14</version>
<configuration>
<outputFileFormat>xml</outputFileFormat>
<consoleOutput>false</consoleOutput>
<enableRSS>false</enableRSS>
<linkXRef>false</linkXRef>
<configLocation>http://ldisonarci.wdf.sap.corp:8080/sonar/profiles/export?format=checkstyle&language=java</configLocation>
<sourceDirectory>/All-Data/proj/test_proj/src</sourceDirectory>
<encoding>UTF-8</encoding>
<failOnViolation>true</failOnViolation>
<violationSeverity>error</violationSeverity>
</configuration>
</plugin>
Теперь я хочу добавить в проект плагин Checkstyle maven 3.0.0. Поэтому я добавил checkstyle версии 3.0.0 для управления плагинами в pom.xml, как показано ниже.
<?xml version="1.0" encoding="UTF-8"?>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<configLocation>google_checks.xml</configLocation>
<sourceDirectories>
<sourceDirectory>${project.basedir}/src/</sourceDirectory>
</sourceDirectories>
</configuration>
</plugin>
</plugins>
Теперь новая эффективная помпа содержит следующее
<?xml version="1.0" encoding="UTF-8"?>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<configLocation>google_checks.xml</configLocation>
<sourceDirectories>
<sourceDirectory>/All-Data/proj/test_proj/src/</sourceDirectory>
</sourceDirectories>
<outputFileFormat>xml</outputFileFormat>
<consoleOutput>false</consoleOutput>
<enableRSS>false</enableRSS>
<linkXRef>false</linkXRef>
<sourceDirectory>/All-Data/proj/test_proj/src</sourceDirectory>
<encoding>UTF-8</encoding>
<failOnViolation>true</failOnViolation>
<violationSeverity>error</violationSeverity>
</configuration>
</plugin>
Если вы посмотрите на недавно созданный эффективный файл pom.xml, у него есть sourceDirectory
, который я не настраивал. Следовательно, когда я запускаю mvn checkstyle:checkstyle
, он завершается с ошибкой, упомянутой выше.
Как мне избавиться от sourceDirectory
, который появляется в эффективном pom.xml.
Я пытался создать новый фиктивный проект с checkstyle, но у него нет этой проблемы. Пожалуйста, помогите.