Error-Prone Command-line flags

关昊天
2023-12-01

命令行标志

Error Prone允许用户启用和禁用特定的检查,并通过将选项传递给Error Prone编译器调用来覆盖其内置的严重性级别(警告与错误)。

有效的Error Prone命令行选项如下所示:

-Xep:<checkName>[:severity]

checkName是必需的,是check的规范名称,例如“ReferenceEquality”。severity是{“OFF”,“WARN”,“ERROR”}之一。必须传递多个标志才能启用或禁用多个检查。特定检查的最后一个标志胜出。

使用示例如下:

-Xep:ReferenceEquality  [开启ReferenceEquality检查并使用它的BugPattern标注的严重级别]
-Xep:ReferenceEquality:OFF  [关闭ReferenceEquality检查]
-Xep:ReferenceEquality:WARN  [开启ReferenceEquality检查并作为警告]
-Xep:ReferenceEquality:ERROR  [开启ReferenceEquality检查并作为错误]
-Xep:ReferenceEquality:OFF -Xep:ReferenceEquality  [开启ReferenceEquality检查]

如果您传递一个引用未知检查名称的标志,默认情况下Error Prone会抛出错误。您可以通过传递-XepIgnoreUnknownCheckNames标志来允许使用未知的检查名称。

Maven

要将Error Prone标志传递给Maven,请使用插件配置中的compilerArgs参数。要启用警告,也必须设置showWarnings参数:

<project>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <compilerId>javac-with-errorprone</compilerId>
          <showWarnings>true</showWarnings>
          <compilerArgs>
            <arg>-Xep:DeadException:WARN</arg>
            <arg>-Xep:GuardedBy:OFF</arg>
          </compilerArgs>
        </configuration>
      </build>
    </plugins>
  </plugin>
</project>

 参考链接: command-line flags

 类似资料: