2

我们正在使用此处描述的 maven build 设置声纳。但是我很想知道是否可以在没有数据库的情况下设置声纳。声纳是否可以在内存中生成所有 metrix 的 PDF 并将其保存到某个目录以供以后使用,而不是保存到数据库中?

4

2 回答 2

2

No. Practically everything in Sonar is stored in a database, so you must have one. PDF isn't any kind of reasonable way to store something for later use. If you're looking for reports in PDF format, there's a PDF plugin, but I've never used it.

于 2013-06-14T03:16:06.157 回答
0

有点晚了,但有可能,但我是新手,所以我不知道这是一个好方法还是不是这样,如果我错了,请纠正我。

这是在没有数据库的情况下安装 Sonarqube 的过程:

  1. 从这里下载 Sonarqube 文件。您可以下载最新版本或您喜欢的任何版本。我下载 6.6 因为它是一个稳定的版本。

  2. 然后下载后,解压缩文件并转到终端/cmd并按照以下命令进行操作:

    $ cd /Downloads/sonarqube-6.6/bin/linux-x86-64 $ ./sonar.sh start

在这里,我使用的是 linux-86-64,所以这就是我使用该文件夹的原因。如果您使用任何其他设备,您可以在 bin 中找到您的设备文件夹并选择它。

然后您可以使用以下命令检查声纳的状态: ./sonar.sh status输出将如下所示: SonarQube is running (26602).

  1. 然后http://localhost:9000/使用用户名:admin和密码:admin登录,然后它会询问您的项目语言,如 java、c# 等以及您的自动化工具。我的是java和Gradle。

    在此之后,它会说给一个名称来生成一个密钥,一小部分会显示一个版本名称和一个 Gradle 命令(如果你选择了任何不同的选项,它将根据该选项生成命令)

    复制版本名称并将其放入build.gradle文件中的插件中:

    plugins { id "org.sonarqube" version "2.7" }

    并构建 gradle。对我来说,它是 2.7,但对你来说可能会有所不同。

  2. 然后复制命令并在终端中运行它。该命令如下所示: ./gradlew sonarqube -Dsonar.host.url=http://localhost:9000 -Dsonar.login=86606bed1bbb1fa68649401674d2f59e395481ff

    生成的每个键的Dsonar.login值都会有所不同。

然后转到http://localhost:9000/,然后您可以在那里看到您的项目名称及其错误、漏洞、代码气味等。

这就是您可以在没有数据库的情况下使用 Sonar 的方式。

PS:我不知道这是否是最好的方法,但对于像我这样的小项目来说,它非常方便,无需设置数据库。

于 2020-05-29T17:44:42.520 回答