【发布时间】:2015-11-12 08:10:35
【问题描述】:
我有 SonarQube 5.1 版本、Jenkins 1.628 和 Gradle 2.3
我能够成功运行 Gradle 构建(包括单元测试)+ 非单元测试(在 Tomcat 之后)+ 获得组合代码覆盖率并将所有数据发布到 SonarQube 服务器,直到昨天我去了 SonarQube 并添加了一个新的手动规则“创建手动规则”。它在“规则”>“创建手动规则”按钮下。
创建规则后,我可以在搜索框(左上角)中看到新规则。我接下来要做的是在 SonarWay - Java 配置文件中激活新的手动规则(在右上角的批量更改按钮下),以了解它会做什么。它没有出错,并且成功更新了某些内容/配置文件。
之后,当我运行分析(使用 Gradle 的 sonarRunner 任务)时,它失败并出现以下错误。即使我删除了该手动规则,我仍然遇到同样的错误。好像我错过了在删除规则之前先从 SonarWay Java 配置文件(默认)停用规则。
知道如何解决以下错误并仍然使用 SonarQube 中的 SonarWay Java 配置文件(在质量配置文件下)来分析 java 项目吗?
(PS:作为一种解决方法,我已将 Java 的默认配置文件(Java 配置文件)设置为 FindBubgs 配置文件之一,该配置文件现在出现并且错误消失了)。
17:37:50 22:44:12.571 INFO - Execute PMD 5.4.0 done: 509 ms
17:37:50 INFO: ------------------------------------------------------------------------
17:37:50 INFO: EXECUTION FAILURE
17:37:50 INFO: ------------------------------------------------------------------------
17:37:50 Total time: 11.169s
17:37:50 Final Memory: 39M/2027M
17:37:50 INFO: ------------------------------------------------------------------------
17:37:50 ERROR: Error during Sonar runner execution
17:37:50 ERROR: Unable to execute Sonar
17:37:50 ERROR: Caused by: java.lang.IllegalArgumentException: Unable to find referenced rule BooleanInversion; perhaps the rule name is mispelled?
17:37:50 ERROR: Caused by: Unable to find referenced rule BooleanInversion; perhaps the rule name is mispelled?
17:37:50 ERROR:
17:37:50 ERROR: To see the full stack trace of the errors, re-run SonarQube Runner with the -e switch.
17:37:50 ERROR: Re-run SonarQube Runner using the -X switch to enable full debug logging.
17:37:50 :sonarRunner FAILED
17:37:50
17:37:50 FAILURE: Build failed with an exception.
17:37:50
17:37:50 * What went wrong:
17:37:50 Execution failed for task ':sonarRunner'.
17:37:50 > Process 'command '/production/jdk1.8.0_45/bin/java'' finished with non-zero exit value 1
17:37:50
完整的详细日志在这里:
17:44:42 22:51:04.548 INFO - Sensor VersionEventsSensor (done) | time=17ms
17:44:42 22:51:04.548 INFO - Sensor PmdSensor
17:44:42 22:51:04.550 INFO - Execute PMD 5.4.0...
17:44:42 22:51:04.566 INFO - Java version: 1.8
17:44:42 22:51:04.616 INFO - PMD configuration: /production/home/c400093/JSlaves/sagrdev3sb10_1/workspace/TCCProcedureSvc/build/sonar/pmd.xml
17:44:43 22:51:05.161 INFO - Execute PMD 5.4.0 done: 611 ms
17:44:43 INFO: ------------------------------------------------------------------------
17:44:43 INFO: EXECUTION FAILURE
17:44:43 INFO: ------------------------------------------------------------------------
17:44:43 Total time: 11.407s
17:44:43 Final Memory: 44M/2002M
17:44:43 INFO: ------------------------------------------------------------------------
17:44:43 ERROR: Error during Sonar runner execution
17:44:43 ERROR: Unable to execute Sonar
17:44:43 ERROR: Caused by: java.lang.IllegalArgumentException: Unable to find referenced rule BooleanInversion; perhaps the rule name is mispelled?
17:44:43 ERROR: Caused by: Unable to find referenced rule BooleanInversion; perhaps the rule name is mispelled?
17:44:43 ERROR:
17:44:43 ERROR: To see the full stack trace of the errors, re-run SonarQube Runner with the -e switch.
17:44:43 ERROR: Re-run SonarQube Runner using the -X switch to enable full debug logging.
17:44:43 :sonarRunner FAILED
17:44:43
17:44:43 FAILURE: Build failed with an exception.
17:44:43
17:44:43 * What went wrong:
17:44:43 Execution failed for task ':sonarRunner'.
17:44:43 > Process 'command '/production/jdk1.8.0_45/bin/java'' finished with non-zero exit value 1
17:44:43
17:44:43 * Try:
17:44:43 Run with --info or --debug option to get more log output.
17:44:43
17:44:43 * Exception is:
17:44:43 org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':sonarRunner'.
17:44:43 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
17:44:43 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
17:44:43 at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
17:44:43 at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
17:44:43 at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
17:44:43 at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:42)
17:44:43 at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
17:44:43 at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
17:44:43 at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
17:44:43 at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:306)
17:44:43 at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.java:79)
17:44:43 at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:63)
17:44:43 at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51)
17:44:43 at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23)
17:44:43 at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:88)
17:44:43 at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
17:44:43 at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)
17:44:43 at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
17:44:43 at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:68)
17:44:43 at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
17:44:43 at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)
17:44:43 at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:55)
17:44:43 at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:149)
17:44:43 at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)
17:44:43 at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
17:44:43 at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80)
17:44:43 at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
17:44:43 at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
17:44:43 at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
17:44:43 at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
17:44:43 at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)
17:44:43 at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:169)
17:44:43 at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
17:44:43 at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
17:44:43 at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
17:44:43 at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
17:44:43 at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
17:44:43 at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
17:44:43 at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
17:44:43 at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
17:44:43 at org.gradle.launcher.Main.doAction(Main.java:33)
17:44:43 at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
17:44:43 at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
17:44:43 at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
17:44:43 at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
17:44:43 Caused by: org.gradle.process.internal.ExecException: Process 'command '/production/jdk1.8.0_45/bin/java'' finished with non-zero exit value 1
17:44:43 at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:365)
17:44:43 at org.gradle.sonar.runner.tasks.SonarRunner.run(SonarRunner.java:62)
17:44:43 at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
17:44:43 at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:218)
17:44:43 at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
17:44:43 at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:200)
17:44:43 at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:585)
17:44:43 at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:568)
17:44:43 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
17:44:43 at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
17:44:43 ... 44 more
17:44:43
17:44:43
17:44:43 BUILD FAILED
17:44:43
17:44:43 Total time: 17.4 secs
17:44:43 Build step 'Invoke Gradle script' changed build result to FAILURE
【问题讨论】:
标签: sonarqube profile illegalargumentexception rule sonarqube5.1