codecamp

IntelliJ IDEA如何进行离线检查

IntelliJ IDEA 离线运行检查

除了从主菜单或 "项目工具" 窗口的上下文菜单中运行代码检查之外,您也可以从命令行启动检查器,这样不会实际运行 IntelliJ IDEA,也就是在 IntelliJ IDEA 中实现离线运行检查。

这样,您就可以作为开发过程的一部分执行定期代码检查,这对于大型项目尤其重要。检验的结果以 XML 格式存储。

从命令行启动代码检查

如果未定义SDK,则检查将失败。SDK 说明应存储在config\options\jdk.table.xml中。
  • 指定以下命令行参数:

    • 启动程序的路径:指定以下启动器之一的完整路径(位于 IntelliJ IDEA 安装的 bin 目录):
      • 对于 Windows: inspect.bat
      • 对于 UNIX 和 macOS: inspect.sh
        请注意,您必须指定完整的路径。相对路径不被接受!
    • 项目文件路径是包含要检查的项目的目录的完整路径。

    • 检查配置文件路径是配置文件的完整路径,应对其进行检查。检查配置文件存储在USER_HOME\.IntelliJ IDEAXX\config\inspection
    • 检查输出路径是将存储报表的现有目录的完整路径
    • 选项。您可以指定:
      • 要检查的目录 -d <full path to the subdirectory>
      • 输出的详细级别 -vX,其中 X 为静音,1 为噪声,2 为额外噪声。

参考例子:

Windows:

"C:\Program Files (x86)\JetBrains\<IntelliJ IDEA home>\bin\inspect.bat" E:\SampleProjects\MetersToInchesConverter E:\Work\MyProject\.idea\inspectionProfiles\Project_Default.xml E:\Work\MyProject\inspection-results-dir -v2 -d E:\SampleProjects\MetersToInchesConverter\subdirectory

macOS:

/Applications/IntelliJ IDEA.app/Contents/bin/inspect.sh ~/IntelliJ IDEAProjects/MyTestProject ~/Library/Preferences/ideaXX/inspection/Default.xml ~/IntelliJ IDEAProjects/MyTestProject/results-dir -v2
            

IntelliJ IDEA 查看离线检查的结果

如果您执行了离线检查,并将检查结果导出到 XML 格式的目录,您可以随时下载并查看这些结果。

或者,您可以在不打开已检查的项目的情况下,在 IntelliJ IDEA 或任何其他文本处理器中打开相关的 XML 文件。

要查看离线检查的结果,请按照下列步骤操作:

  1. 打开进行检查的项目。
  2. 在主菜单上选择:代码| 查看离线检查结果(Code | View Offline Inspection Results)。
  3. 在打开的 "选择路径" 对话框中,导航到包含 XML 格式的检查结果的目录。
  4. 单击“确定”。检查结果显示在 "检查结果工具" 窗口的 "离线视图" 选项卡中。
IntelliJ IDEA抑制、禁用与启用检查
IntelliJ IDEA创建自定义检查
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }