问题标签 [oclint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1586 浏览

ios - OCLint 和 xcode 项目

从昨天开始,我试图让 OCLint 与我的 iOS 项目一起工作。

到目前为止,我所做的是按照这些说明安装 OCLint,然后我按照这些其他说明在 Xcode 中使用它。问题是当我尝试构建 OCLint 聚合目标时,构建过程永远不会结束(我已经等了 30 分钟才停止它)。有人遇到同样的问题吗?我使用的 OCLint 版本是oclint-0.9.dev.3f9355e

0 投票
2 回答
3691 浏览

ios - oclint:oclint-json-compilation-database 返回“未找到跳过 [路径] 命令行。”

在(看似)使用 oclint-xcodebuild 成功生成 compile_commands.json 之后,oclint-json-compilation-database 无法正确创建 pmd 样式的报告。

该命令如下所示:

它返回:

我正在使用 oclint 0.7。

0 投票
1 回答
119 浏览

objective-c - 在 Xcode 中显示超过 x 行的方法的警告

有没有办法检查源代码文件(目标 C)并为超过 x 行的方法/函数显示警告(可以配置 x)。可以集成到 Xcode 中的东西会很棒。

如果它们提供了这样的功能,我已经研究了以下两个用于 C/C++/ObjC 代码的静态分析器,但我找不到文档中提到的任何内容:

有什么想法可以进一步研究吗?

0 投票
1 回答
2405 浏览

json - oclint:错误:违规超过 Jenkins 的阈值

赢不了奥克林特。我真的不知道该怎么做,我尝试在构建脚本中进行一些更改,但没有任何帮助。

脚本:

错误:

0 投票
1 回答
845 浏览

c++ - 如何比较 clang 中的两个源位置?

这似乎更像是一个 C++ 问题而不是 Clang 问题......

我必须使用 C++ 来编写 OCLint(静态代码分析器)规则。

我希望比较 Clang 库中类型为“SourceLocation”的两个对象。

此类型提供有关代码中对象(语句、声明等)的位置(基本上是行和列)的信息。

基本上,我想知道语句 A 是在语句 B 之前还是之后开始和结束。

在伪代码中,这意味着我想从以下位置获取布尔值:

( stmt_A->getLocBegin() < stmt_B->getLocBegin() ),例如。当然,这不会编译,因为“<”运算符未在两个“SourceLocation”类型的对象之间定义。

我在 Clang 文档中找到了一个方法,但是由于我不是 C++ 的频繁用户,所以我没有找到使用它的方法,这里是这个方法:

http://clang.llvm.org/doxygen/classclang_1_1BeforeThanCompare_3_01SourceLocation_01_4.html

我不知道如何使用 SourceManager,或者只是如何获得上面的这个布尔值。

0 投票
7 回答
6975 浏览

c++ - 如何在 C++ 中获取类型的大小?

我正在寻找一个返回类型大小的 C++ 函数。例如 :

我知道 size() 的存在是为了获取字符串的长度,所以我想也有一个函数表明了这一点。

此外,我正在使用 Clang 库,所以我可以获得一个类型(http://clang.llvm.org/doxygen/classclang_1_1Type.html)但我目前不知道比较两种类型并知道它们之间的更大二。

0 投票
1 回答
176 浏览

ios - 断言失败: (SourceMgr && "SourceManager not set!") with oclint-json-compilation-database

我正在尝试生成 OCLint 报告。

当我尝试执行命令“oclint-json-compilation-database --debug”时,我收到以下错误:-

编译/Users/tavant/Desktop/TestJenkinsCI/TestJenkinsCI/AppDelegate.m**Assertion failed: (SourceMgr && "SourceManager not set!"),函数getSourceManager,文件/Users/lqi/.jenkins/workspace/oclint-ci/oclint -build-nodes/master/oclint/llvm/tools/clang/include/clang/Basic/Diagnostic.h,第 384 行。**

我正在使用 oclint 0.9(最新版本)。

0 投票
0 回答
607 浏览

ios - 分析 iOS 项目时 oclint-json-compilation-database 未运行 (0.9)

我尝试运行 oclint 0.7,它开始通过我的项目,但最终失败了:

一些搜索表明这实际上是 0.7 的一个已知问题,解决方案是升级到开发版本(0.9)。我使用了 oclint 网站上的链接,并运行了与 0.7 工作相同的一组命令。我得到:

而 oclint 只是坐在那里,没有输出(已经这样了一个多小时)。如果我 ctrl+c 我得到这个(如果它有用,我不知道)

有没有人有这个问题或任何想法我可能做错了什么?

0 投票
3 回答
1146 浏览

ios - 规则“OCLint:ivar assignment outside accessors or init”不存在

我正在尝试集成SonarQube以生成关于我的报告iOS project

我正在使用Objective-C 声纳插件

当我跑步时./run-sonar.sh

OCLintcompile_commands.json在我的根目录中生成一个文件。

之后出现以下错误

有人可以帮我解决这个问题吗?谢谢 AMR

纳克斯

0 投票
4 回答
4766 浏览

iphone - xcodebuild 生成空的 compile_commands.json

我正在使用以下命令将 oclint 与 xcode 5- 一起使用

Step1: xcodebuild -target OClintDemo -configuration Debug -scheme OClintDemo -sdk iphonesimulator
Step2: OClintDemo jenkins$ xcodebuild -sdk iphonesimulator | tee xcodebuild.log
Step3: oclint-xcodebuild xcodebuild.log
Step4: oclint-json-compilation-database -- -o=report.html

但我得到 compile_commands.json 空文件,report.html 包含以下内容-OCLint 报告摘要:TotalFiles=0 FilesWithViolations=0 P1=0 P2=0 P3=0 [OCLint ( http://oclint.org ) v0.7 ]