Java Sonar:您必须为未知未解析定义以下强制属性
我正试图在java中的一个项目上运行SonarQube。我配置了sonar属性文件并将其放在项目目录中。运行sonar.bat时出现错误,要求定义强制参数。起初我认为我的属性文件是错误的,但我已经尝试了我能想到的一切 这是当前的属性文件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
# 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谢谢。!!我很高兴能帮上忙