我们正在使用所描述的here设置带有maven构建的声纳。 但是我有兴趣了解是否可以在没有数据库的情况下设置声纳。声纳是否可以在内存中生成包含所有metrix的PDF并将其保存到某个目录以供以后使用而不是保存到数据库中?
答案 0 :(得分:2)
没有。实际上,Sonar中的所有内容都存储在数据库中,因此您必须拥有一个。 PDF不是任何合理的方式来存储以供以后使用。如果您正在寻找PDF格式的报告,那就是a PDF plugin,但我从未使用过它。
答案 1 :(得分:0)
来晚了,但是有可能,但是我对此并不陌生,所以我不知道这是一个好方法还是不正确,如果我错了,请纠正我。
以下是不使用数据库安装Sonarqube的过程:
从here下载Sonarqube文件。您可以下载最新版本或您喜欢的任何版本。我下载了6.6,因为它是一个稳定的版本。
然后在下载后,解压缩文件并转到终端/ cmd,然后执行以下命令:
$ cd /Downloads/sonarqube-6.6/bin/linux-x86-64
$ ./sonar.sh start
在这里,我正在使用linux-86-64,所以这就是我使用该文件夹的原因。如果您使用的是其他设备,则可以在bin中找到设备文件夹,然后选择它。
然后您可以使用以下命令检查声纳的状态:
./sonar.sh status
,输出将如下所示:
SonarQube is running (26602).
然后转到http://localhost:9000/
并使用用户名: admin 和密码: admin 登录,然后它将询问您您的项目语言,例如Java, C#等以及您的自动化工具。我的是Java和Gradle。
此后,将说出一个名称来生成密钥,一小部分将显示一个版本名称和一个Gradle命令(如果您选择了其他选项,它将根据该命令生成命令)
复制版本名称并将其放在build.gradle
文件的插件中:
plugins {
id "org.sonarqube" version "2.7"
}
并建立gradle。对我来说,它是2.7,但对您来说可能会有所不同。
然后复制命令并在终端中运行它。该命令将如下所示:
./gradlew sonarqube -Dsonar.host.url=http://localhost:9000 -Dsonar.login=86606bed1bbb1fa68649401674d2f59e395481ff
其中每个生成的密钥的Dsonar.login
值将不同。
然后转到http://localhost:9000/
,然后您可以在其中看到项目名称及其错误,漏洞,代码味道等。
这是无需数据库即可使用Sonar的方式。
PS:我不知道这是否是最好的方法,但是对于像我这样的小型项目,无需建立数据库就非常方便。