Java Sonar:您必须为未知未解析定义以下强制属性

Java Sonar:您必须为未知未解析定义以下强制属性,java,sonarqube,sonar-runner,Java,Sonarqube,Sonar Runner,我正试图在java中的一个项目上运行SonarQube。我配置了sonar属性文件并将其放在项目目录中。运行sonar.bat时出现错误,要求定义强制参数。起初我认为我的属性文件是错误的,但我已经尝试了我能想到的一切 这是当前的属性文件 # Required metadata sonar.projectKey=_newtest2 sonar.projectName=NoSqlDataModeling sonar.projectVersion=2.0 # Path to the parent s

我正试图在java中的一个项目上运行SonarQube。我配置了sonar属性文件并将其放在项目目录中。运行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文件提供逗号分隔的路径吗? 我提供的路径到底有多深?不同的类文件位于build/classes/..//
每次阅读时,我都会更改项目密钥,它必须是唯一的。

如何将项目上载到SonarQube:

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

2) 在命令提示符下,将cd复制到项目的目录中

3) 确保项目的根文件夹具有“sonar project.properties”文件,并且已对其进行配置。如果您的项目没有“sonar project.properties”文件,则会出现以下错误=

我的VendingMachineMulator应用程序的“sonar project.properties”文件如下所示:

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并检查项目是否存在

尝试从sonar-project.properties所在的目录中运行sonar scanner命令

我遇到了同样的问题,后来发现我是从不同的目录运行命令。

那些在项目文件夹中运行sonar runner时遇到“执行失败”的人 添加
-Dproject.settings=./声纳项目.properties

因为它无法找到设置文件,所以您必须明确地提到它

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

对我来说,
D:\TB-2 9月24日\server-side\server-side>C:\Users\m1042220\Downloads\sonar-plugin\agent\sonar-plugin-agent\sonar-qube-runner\bin\sonar-runner-Dproject.settings=./sonar-project.properties

您在上看到答案了吗?看起来和你遇到的问题一样。尼克,是的,我有,我也修改了属性文件。还是没有work@Karthikeyan,谢谢你的编辑。我不熟悉堆栈溢出,您可以尝试在存在空格的地方将路径值放在引号中。就像将sonar.sources=D:/eclipse workspace/NoSqlDataModeling更改为这个sonar.sources=“D:/eclipse workspace/NoSqlDataModeling”嘿,尼克,没有。我得到了另一个属性文件,它似乎工作正常。它也简单得多。但是我看不出这两个配置文件之间的区别。这是新的配置文件。如果你能指出我犯了什么错误,和上面的答案一样,还有一些声纳属性
sonar.projectKey=MyWebApp-sonar.projectBaseDir=./MyWebApp-sonar.projectName=MyWebApp-sonar.projectVersion=1.0-sonar.sources=./src/main/java-sonar.language=java-sonar.java.binaries=。sonar.scm.disabled=真正的sonar.sourceEncoding=UTF-8
你太棒了。对于竹子用户,我在“附加参数”中添加了值:-Dproject.settings=./sonar-project.properties谢谢。!!我很高兴能帮上忙