在当前位置找不到oclint compile_commands.json

时间:2015-07-16 06:56:37

标签: xcode jenkins oclint

最近我正在尝试使用 Jenkins for Oclint 静态分析objective-c来源。

所以我按照Oclint.org上的指南,特别是这个页面oclint_guide_with_Jenkins

然后,我在Jenkins上运行构建作业。 但是下面的日志总是失败了。 (额外的日志只是关于svn签出)

+ oclint-json-compilation-database -- -report-type pmd -o oclint.xml -rc=LONG_LINE=120
Error: compile_commands.json not found at current location.

有人能告诉我解决这个问题的方法吗? :)

1 个答案:

答案 0 :(得分:1)

你需要生成compile_commands.json,我不确定xcodebuild是否能做到这一点,但你可以使用Facebook的xctool:https://github.com/facebook/xctool这是xcodebuild的包装器并提供不同的记者。

您也可以使用Homebrew安装xctool,安装后使用以下命令生成compile_commands.json,然后运行oclint命令。

如果您有工作区文件:

xctool -scheme $scheme -workspace $workspaceFile -sdk iphonesimulator ARCHS=i386   VALID_ARCHS=i386 CURRENT_ARCH=i386 ONLY_ACTIVE_ARCH=NO -reporter json-compilation-database:compile_commands.json build

如果您有项目文件:

xctool -scheme $scheme -project $projectFile -sdk iphonesimulator ARCHS=i386 VALID_ARCHS=i386   CURRENT_ARCH=i386 ONLY_ACTIVE_ARCH=NO -reporter json-compilation-database:compile_commands.json build