声纳:必须为未知的未解析定义以下强制属性

2022-09-02 13:04:21

我正在尝试在Java项目中运行SonarQube。我配置了sonar属性文件并将其放在项目目录中。运行声纳时.bat出现一个错误,要求定义必需参数。起初我以为我的属性文件是错误的,但我已经尝试了我能想到的一切。

这是当前属性文件

# Required metadata
sonar.projectKey=_newtest2
sonar.projectName=NoSqlDataModeling
sonar.projectVersion=2.0

# Path to the parent source code directory.
# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
# Since SonarQube 4.2, this property is optional if sonar.modules is set. 
# If not set, SonarQube starts looking for source code from the directory containing 
# the sonar-project.properties file.
sonar.sources=D:/eclipse workspace/NoSqlDataModeling


#Comma-separated paths to directories containing the binary files (directories with class files, in the case of Java).
sonar.binaries=D:/eclipse workspace/NoSqlDataModeling/build/classes

#Comma-separated paths to files with third-party libraries (JAR files in the case of Java). Patterns #can be used.
sonar.libraries=D:/eclipse workspace/NoSqlDataModeling/WebContent/WEB-INF/lib/*.jar

#language used
sonar.language=java

# Encoding of the source code
sonar.sourceEncoding=UTF-8

# Additional parameters
sonar.my.property=value

这是错误消息

INFO: SonarQube Server 4.3.1
09:58:57.783 INFO  - Load batch settings
09:58:57.901 INFO  - User cache: C:\Users\Rohan.Kumar\.sonar\cache
09:58:57.907 INFO  - Install plugins
09:58:57.913 INFO  - Download sonar-maven-batch-plugin-4.3.1.jar
09:58:58.037 INFO  - Download sonar-findbugs-plugin-2.1.jar
09:58:58.436 INFO  - Download sonar-surefire-plugin-2.1.jar
09:58:58.540 INFO  - Download sonar-cpd-plugin-4.3.1.jar
09:58:58.870 INFO  - Download sonar-core-plugin-4.3.1.jar
09:58:58.956 INFO  - Download sonar-java-plugin-2.1.jar
09:58:59.097 INFO  - Download sonar-dbcleaner-plugin-4.3.1.jar
09:58:59.216 INFO  - Download sonar-jacoco-plugin-2.1.jar
09:58:59.331 INFO  - Download sonar-l10n-en-plugin-4.3.1.jar
09:58:59.350 INFO  - Download sonar-squid-java-plugin-2.1.jar
09:58:59.453 INFO  - Download sonar-email-notifications-plugin-4.3.1.jar
09:58:59.655 INFO  - Download sonar-design-plugin-4.3.1.jar
09:58:59.826 INFO  - Install JDBC driver
09:59:00.061 WARN  - H2 database should be used for evaluation purpose only
09:59:00.061 INFO  - Create JDBC datasource for jdbc:h2:tcp://localhost/sonar
09:59:00.784 INFO  - Initializing Hibernate
INFO: ------------------------------------------------------------------------
INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
Total time: 7.521s
Final Memory: 5M/19M
INFO: ------------------------------------------------------------------------
ERROR: Error during Sonar runner execution
ERROR: Unable to execute Sonar
ERROR: Caused by: You must define the following mandatory properties for 'Unknow
n': sonar.projectKey, sonar.projectName, sonar.projectVersion, sonar.sources
ERROR:
ERROR: To see the full stack trace of the errors, re-run SonarQube Runner with t
he -e switch.
ERROR: Re-run SonarQube Runner using the -X switch to enable full debug logging.

我应该为所有类文件和 java 文件提供逗号分隔的路径吗?我提供路径的深度是多少?不同的类文件位于构建/类/.../.../<4个不同的文件夹中,这些文件夹中有类文件>每次我都会更改项目密钥,因为我读取它必须是唯一的。


答案 1

如何将项目上传到SonarQube:

1)启动SonarQube。如果您在浏览器中键入 localhost:9000,您应该能够看到它。

2)在命令提示符下,cd到项目的目录enter image description here

3) 确保项目的根文件夹具有“sonar-project.properties”文件,并且已配置。如果您的项目没有“声纳项目.属性”文件,它将收到此错误 = 声纳设置未定义的强制属性

我的自动售货机模拟器应用程序的“声纳项目.属性”文件如下所示:enter image description here

4) 在命令提示符下,现在键入“C:\sonar-scanner\sonar-scanner-2.6.1\bin\sonar-scanner.bat”。或者,您也可以键入“C:\sonar-scanner\sonar-scanner-2.6.1\bin\sonar-runner.bat”。我不确定有什么区别。确保您所在的目录仍然是项目的主文件夹。

5) 完成!刷新 localhost:9000 并检查项目是否存在。


答案 2

那些在项目文件夹中运行声纳运行器时遇到“执行失败”的人添加

-Dproject.settings=./sonar-project.properties

由于它无法找到设置文件,因此您必须明确提及它

sonar-project.properties是我项目中的文件名,我给了projectKey,projectName

对我来说,用上面提到的参数运行声纳运行器。Sonar runner 位于文件夹路径 sonar-plugin\agent\sonar-plugin-agent\sonar-qube-runner\bin\sonar-runner 或将其添加到环境路径中

sonar-runner -Dproject.settings=./sonar-project.properties


推荐