当前位置: 首页 > 知识库问答 >
问题:

如何为C工作进行声纳分析?

司凡
2023-03-14

我想用声纳对一个c代码进行静态分析。我已经安装了声纳和配置我的项目(它出现在localhost声纳页面,但我没有看到任何代码违反各自的代码)。我安装了C社区插件。

我的声纳项目。属性如下所示:

# required metadata
sonar.projectKey=DiceInvaders
sonar.projectName=Dice Invaders
sonar.projectVersion=1.0

# optional description
sonar.projectDescription=DiceInvaders by CS

# path to source directories (required)
sonar.sources=D:\\DiceInvaders\\Code

# path to test source directories (optional)
#sonar.tests=D:\\DiceInvaders\\Code

# path to project binaries (optional), for example directory of Java bytecode
#sonar.binaries=binDir

# optional comma-separated list of paths to libraries. Only path to JAR file is supported.
#sonar.libraries=path/to/library/*.jar,path/to/specific/library/myLibrary.jar,parent/*/*.jar

# The value of the property must be the key of the language.
sonar.language=c++
sonar.exclusions=**/*.ipch, **/**/*.rc
sonar.cxx.cppcheck.path = "C:\Program Files (x86)\Cppcheck\cppcheck.exe"
sonar.cxx.cppcheck.reportPath="D:\DiceInvaders\Code\cppcheck-reports\cppcheck.xml". 

# Additional parameters
#sonar.my.property=value

从cmd运行sonar runner时,我没有收到任何错误。

如果我手动运行cppcheck。exe工具在我的项目中我可以找到违规行为。为什么这些违规行为不出现在sonar的页面上?还有什么我应该配置的吗,我做错了什么吗?

共有3个答案

卫焕
2023-03-14

Sonar C社区插件的语言键不是“C”,而是“cxx”。看见http://docs.codehaus.org/pages/viewpage.action?pageId=185073817.

所以你必须更换声纳。语言=声纳。语言=cxx'

苗学民
2023-03-14

我有一个类似的问题,这是由“声纳”后面的空白引起的。语言=cs'。确保“cxx”之后立即有换行符。希望能奏效。

谭裕
2023-03-14

我可以在sonnar runner之前独立运行cppcheck工具,并将生成的xml报告放在sonnar runner的bin文件夹中。

在声纳项目中。属性文件我直接指定了xml:sonar。cxx。检查一下。reportPath=cppcheck-result-1。xml

 类似资料:
  • 我正在Jenkins进行一个用sonarqube分析代码的项目。workspace下的项目结构为:/var/lib/jenkins/workspace/myproject-trunk-sonar/myproject/pom.xml,Module1,Module2等 如果pom.xml和模块所在的/var/lib/jenkins/workspace/myproject-trunk-sonar/myp

  • 我有一个项目结构,如下所示。 Cloud projects文件夹有四种类型的项目(eco-projects,evn-projects,met-projects,svn-projects) 每种类型的项目又包含四个不同的项目,比如在生态项目中,我们有生态-1-项目,生态-2-项目,生态-3-项目,生态-4-项目。

  • 在使用SonarQube 4.5.4分析c#项目时,我遇到了以下错误。我已经安装了sonar-csharp-plugin-4.0。

  • 在VS Code中对C#的支持是针对.NET跨平台开发框架的(DNX)(见“用APS.NET Core和VS Code工作”这篇相关文章)。我们致力于将VS Code作为一个优秀的跨平台C#开发的编辑器。例如让很多Unity游戏开发的厂家乐于使用VS Code来代替MonoDevelop IDE。 The C# support in VS Code is optimized for cross-p

  • 问题内容: 为了学习,我需要在ubuntu服务器上安装sonarqube。 我按照本教程进行了安装:http : //www.naturalborncoder.com/methodology/2015/05/27/sonarqube-on- ubuntu-14-04/ (我在代理部分之前停了下来),但我无法访问127.0.0.1:9000。从日志来看,当我启动sonarcube时,elastics

  • 我有一个代码片段,在那里我从sonar得到了关键的代码气味,因为exception实现了Serializable。这段代码在生产中运行了很长一段时间,我从Sonar Doc中看不到任何问题:“例如,在负载下,大多数J2EE应用程序框架将对象刷新到磁盘,一个据称具有非瞬时、不可串行化数据成员的可串行化对象可能导致程序崩溃”。你是否在你的应用程序中面对这个声纳问题的代码崩溃?