使用SonarQube分析iOS / Swift移动应用程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用SonarQube分析iOS / Swift移动应用程序相关的知识,希望对你有一定的参考价值。

好吧,在我的公司,我们用一些语言开发了一些项目。现在我们正在从SVN迁移到GitLab,我们开始使用Jenkins和SonarQube与Ubuntu Server for CI。

一切都很好的Java项目(一切都运行Linux奴隶),但现在我们想使用SonarQube分析与Objective-C和Swift的应用程序。

要分析项目(移动应用程序),我们将购买开发人员版本以使用Swift和Objective-C插件(开源插件被丢弃)。

所以,我的问题是,我们需要将SonarQube从Ubuntu转移到Mac吗?或者可以用Mac奴隶分析?

顺便说一句,我阅读了所有插件文档,但没有说明。

谢谢!!

答案

您可以在任何您喜欢的平台上托管SonarQube,因为它是一个Java应用程序。同样,您可以在任何地方分析大多数语言,因为大多数语言的分析也是用Java处理的。对于斯威夫特来说,情况确实如此;在任何可以使用Java的地方,您都可以运行分析。

对于Objective-C,首先需要在运行分析之前构建代码using the Build Wrapper。 Build Wrapper是用C ++编写的,但是为Windows,Linux和Mac编译,所以你可以在任何你喜欢的地方运行它。这意味着您唯一真正的约束是编译C,C ++或Objective-C代码所需的平台。

显然,您可以对任何风格的奴隶进行分析,特别是在Mac上。 Analysis将生成一个报告,该报告将按照收到的顺序提交给服务器,排队和处理。

注:因为在您的问题中暗示了这一点,我想进行一个特定的扩展:您分析代码的位置应该与您的SonarQube实例的托管位置无关。特别是,在托管SonarQube实例的同一台计算机上运行分析并不是一个好主意。你应该至少有三个服务器:一个用于SonarQube,一个用于数据库,一个用于Jenkins。有关更多信息,请参阅the docs

以上是关于使用SonarQube分析iOS / Swift移动应用程序的主要内容,如果未能解决你的问题,请参考以下文章

iOS swift cookie创建存储移除

JaCoCo SonarQube 不兼容版本 1007

使用 SonarQube 分析 Typescript

sonarqube 混合 obj-c swift 项目,如何扫描代码覆盖率

SonarQube在Xamarin项目中没有检测到C#问题

如何绕过 sonarQube 分析中的遗留代码?