Kotlin 在 Maven 中排除 ktlint 目录

Kotlin exclude ktlint directories in maven

我正在尝试删除 generate-sources 目录以防止出现 klint 错误,或者在 exclude 中添加一些脚本作为替代方案

从这里我认为我们可以在 gradle 中做到这一点 https://github.com/JLLeitschuh/ktlint-gradle/issues/97

gradle中的这个特征如下

ktlint {
    filter {
        exclude("**/generated/**")
        include("**/kotlin/**")
    }
}  

到目前为止,我已经尝试在 Maven 中执行此操作,但它仍然会对一些不可避免的生成源进行 linting。 https://github.com/gantsign/ktlint-maven-plugin/issues/341

<sourcesExcludes>
   <sourcesExcludes>directoryToExclude<sourcesExclude>
</sourcesExcludes>

在 maven 插件中使用以上内容

<plugin>
  <groupId>com.github.gantsign.maven</groupId>
  <artifactId>ktlint-maven-plugin</artifactId>
  <version>1.7.0</version>
  <executions>
    <execution>
      <configuration>
          <sourcesExcludes>
              <sourcesExclude>**/generated-sources/graphql/com/expediagroup/dataquality/api/utils/**</sourcesExclude>
          </sourcesExcludes>
      </configuration>
      <phase>prepare-package</phase>
      <goals>
        <goal>format</goal>
        <goal>check</goal>
      </goals>
    </execution>
  </executions>
</plugin>

感谢任何有关如何排除生成源目录的帮助。

我在这里找到了解决方案 https://github.com/gantsign/ktlint-maven-plugin/issues/341

我们只需要使用下面的代码来避免目标文件。

<configuration>
    <sourceRoots>${project.build.sourceDirectory}</sourceRoots>
</configuration>