sonar-mybatis icon indicating copy to clipboard operation
sonar-mybatis copied to clipboard

匹配到规则后Background Tasks报错

Open CullenLin opened this issue 4 years ago • 3 comments

  • sonar 版本:6.7 SQL语句: delete from <table_name> where id = #{id,jdbcType=BIGINT} and 1 = 1
  • 初步分析: mybatislint-rules.xml配置了remediationFunction
  • 相关错误日志:
Caused by: java.lang.IllegalArgumentException: Rule 'MyBatisLint:MyBatisMapperCheckRule3' can not use 'Constant/issue' remediation function because this rule does not have a fixed remediation cost.
	at org.sonar.server.computation.task.projectanalysis.issue.DebtCalculator.verifyEffortToFix(DebtCalculator.java:67)
	at org.sonar.server.computation.task.projectanalysis.issue.DebtCalculator.calculate(DebtCalculator.java:46)
	at org.sonar.server.computation.task.projectanalysis.issue.IssueLifecycle.initNewOpenIssue(IssueLifecycle.java:71)
	at org.sonar.server.computation.task.projectanalysis.issue.IntegrateIssuesVisitor.lambda$fillNewOpenIssues$0(IntegrateIssuesVisitor.java:78)
	at java.lang.Iterable.forEach(Unknown Source)
	at org.sonar.server.computation.task.projectanalysis.issue.IntegrateIssuesVisitor.fillNewOpenIssues(IntegrateIssuesVisitor.java:77)
	at org.sonar.server.computation.task.projectanalysis.issue.IntegrateIssuesVisitor.visitAny(IntegrateIssuesVisitor.java:64)```

CullenLin avatar Jun 01 '20 06:06 CullenLin

可能是版本兼容性问题,你用 1.0.5 这个版本试试看下

donhui avatar Jun 01 '20 06:06 donhui

问题复现

SonarQube 8.4.2 MyBatis Plugin for SonarQube 1.0.6 SonarXML 2.0.1 (build 2020)

Caused by: java.lang.IllegalArgumentException: Rule 'MyBatisLint:MyBatisMapperCheckRule1' can not use 'Constant/issue' remediation function because this rule does not have a fixed remediation cost.
	at org.sonar.ce.task.projectanalysis.issue.DebtCalculator.verifyEffortToFix(DebtCalculator.java:70)
	at org.sonar.ce.task.projectanalysis.issue.DebtCalculator.calculate(DebtCalculator.java:49)
	at org.sonar.ce.task.projectanalysis.issue.IssueLifecycle.initNewOpenIssue(IssueLifecycle.java:78)
	at java.base/java.util.stream.ReferencePipeline$11$1.accept(Unknown Source)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
	at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown Source)
	at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
	at java.base/java.util.stream.ReferencePipeline.collect(Unknown Source)
	at org.sonar.ce.task.projectanalysis.issue.IntegrateIssuesVisitor.fillNewOpenIssues(IntegrateIssuesVisitor.java:73)
	at org.sonar.ce.task.projectanalysis.issue.IntegrateIssuesVisitor.visitAny(IntegrateIssuesVisitor.java:60)
	... 48 more

FalconIA avatar Nov 03 '20 03:11 FalconIA